2010-02-15 12 views

risposta

3

Si desidera installare l'estensione Greasemonkey per Firefox. (O gm4ie per IE, o greasemetal per Chrome (PersonalizedWeb funziona anche in un modo molto più semplice per Chrome), greasekit per Safari, o user.js per Opera)

Greasemonkey permette di fare esattamente questo ... esegue uno script automaticamente caricamento di ogni pagina (puoi scegliere quali pagine/siti carica su)

Altrimenti dovrai fare clic sul bookmarklet su ogni pagina caricata per eseguire il tuo script.

+2

Quindi Greasemonkey (o il suo equivalente in $ browser) è l'unica soluzione per questo? Il mio obiettivo era quello di creare un bookmarklet che potrei condividere con altre persone, invece di richiedere un add-on in ogni caso. Per qualche contesto, il problema che sto cercando di risolvere è il sito web della mia scuola. I web designer hanno pensato che sarebbe stata una brillante idea rendere tutti i link sul sito semplicemente collegamenti JS che attraverso una combinazione criptica di PHP e AJAX aggiornano la pagina web. Sfortunatamente, a causa del modo in cui lo hanno fatto, al momento non è possibile collegarsi, ad esempio, alla pagina dei compiti della tua classe. – scikidus

+2

Invece devi dire "Vai al sito Web, quindi fai clic qui, quindi fai clic qui, quindi fai clic qui". La mia speranza era di creare un bookmarklet che caricasse il sito Web e una volta caricata la pagina esegui i collegamenti JS necessari per recuperare la pagina desiderata. – scikidus

+0

Ah, @ scikidus vedo ... beh, purtroppo sembra che il sito sia fuori dal tuo controllo. È possibile creare/utilizzare un bookmarklet, ma non c'è modo di farlo scattare automaticamente (senza) ricorrere a una soluzione di tipo Greasemonkey. C'è la possibilità che tu possa parlare con lo staff della tua scuola per offrire una soluzione per il sito? Per quanto riguarda gli sviluppatori originali (-1 per i collegamenti solo JS) – scunliffe

1

Dato che non esiste una soluzione migliore, ho pensato di escludere che Opera supporta in modo nativo gli script utente da eseguire su ogni caricamento di pagina. Da lì, potresti avere lo script per controllare l'url corrente ed eseguirlo se sulla pagina appropriata.

See here for documentation

6

Il modo più semplice che ho trovato per fare questo senza bisogno di Greasemonkey o qualcosa di simile è quello di scrivere i tuoi JS in modo che controlli per vedere se si è sulla pagina appropriata, e ci va se non lo è . Se è presente nella pagina, esegue il JS/alert/qualunque cosa. Devi usare il bookmarklet due volte, ma hai solo bisogno di un bookmarklet, e potrebbe essere ancora più veloce/facile l'utente fare il clic/qualunque cosa lui o lei stessa. Quindi il codice sarebbe simile a questo:

if(this.document.location.href != "[url]") { //Are we on the page yet? 
    this.document.location.href = "[url]"; // If not, go there 
} 
else { 
    if (document.readyState === "complete") { //Wait for the page to finish loading 
    // DO STUFF 
    } 
} 
Problemi correlati