У кого-то есть проблемы с Greasemonkey @includes не стрельба?
Я пишу сценарии Greasemonkey, чтобы выполнять все виды автоматизации и очистки экрана для моей работы. У меня есть список элементов / учетных записей для работы, и я просматривал их, извлекая данные из различных веб-инструментов.
Я перехватываю событие готовности документа и начинаю свою обработку оттуда, и когда я закончу, я буду загружать следующую страницу в последовательности либо с window.href
или просто щелкнув ссылку на следующую страницу.
Время от времени, когда страница загружается, Greasemonkey не запускается. В консолях нет ошибок, и если я просто обновлю страницу, она будет работать. Это как @include
директивы терпят неудачу. Я бы сказал, что URL менялся, но это не так, и при обновлении страницы сценарий запускается очень хорошо (хотя мне приходится останавливать то, что я делаю, и нажимать F5).
Кто-нибудь видел это раньше? Что я могу с этим поделать (кроме перехода на Selenium)?
// ==UserScript==
// @name testG
// @version 1
// @grant none
// @require https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// ==/UserScript==
var mySearches = localStorage.getItem('mySearches');
var myResults = localStorage.getItem('myResults');
if (mySearches){
mySearches = JSON.parse(mySearches);
}else{
mySearches = ["one", "two", "three","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39"];
localStorage.setItem('mySearches', JSON.stringify(mySearches));
}
if (myResults){
myResults = JSON.parse(myResults);
}else{
myResults = [];
}
$(document).ready( function() {
var search = $("input[title='Search']");
console.log("mySearches is " + JSON.stringify(mySearches));
var mySearch = mySearches.shift();
myResults.push(mySearch);
localStorage.setItem('myResults', JSON.stringify(myResults));
search.val( mySearch );
if ( mySearches.length < 1){
localStorage.removeItem('mySearches');
alert (myResults);
}else{
myResults.push(mySearch);
localStorage.setItem('mySearches', JSON.stringify(mySearches));
window.location.replace("https://www.google.com");
}
} );//END DOCUMENT READY