Sto scrivendo un codice utente Greasemonkey e voglio che un codice specifico venga eseguito quando la pagina completa completamente il caricamento, poiché restituisce un conteggio div che voglio visualizzare.Greasemonkey - attendi che la pagina venga caricata prima di eseguire le tecniche di codice
Il problema è che questa pagina in particolare richiede un po 'prima di caricare tutto.
Ho provato, documento $(function() { });
e wrapper $(window).load(function(){ });
. Tuttavia, nessuno sembra funzionare per me, anche se potrei applicarli male.
La cosa migliore che posso fare è usare un setTimeout(function() { }, 600);
che funziona, anche se non sempre affidabile.
Qual è la tecnica migliore da utilizzare in Greasemonkey per garantire che il codice specifico venga eseguito al termine del caricamento della pagina?
Si potrebbe utilizzare '(funzione init() {var counter = document.getElementById ('id-di-elemento'); if (contatore) {/ * fare qualcosa con l'elemento contatore * /} else {setTimeout (init, 0);}})(); 'per eseguire continuamente il polling dell'esistenza dell'elemento. Questa è la soluzione più generica. –
I cugini di Greasemonkey, Tampermonkey e Scriptish, supportano più ['@ run-at'] (https://tampermonkey.net/documentation.php#_run_at) valori che includono' document-idle' e 'context-menu' che possono essere d'uso. Sembra inoltre che Greasemonkey stia [aggiungendo supporto] (https://github.com/greasemonkey/greasemonkey/issues/2109) per 'document-idle' sebbene non sia stato ancora documentato. –