У кого-то есть проблемы с Greasemonkey @includes не стрельба? - PullRequest
0 голосов
/ 20 февраля 2019

Я пишу сценарии 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...