Domanda

Quindi sono stato in grado di far lavorare insieme Greasemonkey e jQuery 1.2.6 senza problemi, ma ora mi chiedo come incorporare plug-in jQuery aggiuntivi nel mio script Greasemonkey, come il plug-in SimpleModal di Eric Martin ( http://www.ericmmartin.com/projects/simplemodal/ ).

Il seguente codice viene caricato su jQuery, ma non sono sicuro su come caricare SimpleModal correttamente:

    var GM_JQ = document.createElement('script');
    GM_JQ.src = 'http://jqueryjs.googlecode.com/files/jquery-1.2.6.min.js';
    GM_JQ.type = 'text/javascript';
    document.getElementsByTagName('head')[0].appendChild(GM_JQ);

    var GM_JQ_SM = document.createElement('script');
    GM_JQ_SM.src = 'http://simplemodal.googlecode.com/files/jquery.simplemodal-1.2.2.min.js';
    GM_JQ_SM.type = 'text/javascript';
    document.getElementsByTagName('head')[0].appendChild(GM_JQ_SM);

    // Check if jQuery's loaded
    function GM_wait() {
        if(typeof unsafeWindow.jQuery == 'undefined') { 
            window.setTimeout(GM_wait,100); 
        }
        else { 
            $ = unsafeWindow.jQuery; 
        }

    }
    GM_wait();

Qualcuno ha qualche idea? Grazie.

È stato utile?

Soluzione

Innanzitutto, se si è d'accordo con l'accesso al debug di Firebug, il modo più semplice per includere jquery è utilizzare le impostazioni richieste:

// @require        http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js
// @require        http://ajax.googleapis.com/ajax/libs/jqueryui/1.5.2/jquery-ui.min.js 

Seguendo quella riga puoi includere altri script esterni. La maggior parte dei plugin di jquery non sono disponibili come api jquery, ma puoi ospitarli da soli.

L'uso del requisito ti consente anche di scaricare tutto il codice di caricamento e semplicemente andare con:

$(document).ready( function() { ... });

Firebug segnalerà dei bug, ma non sarai in grado di entrare nel debugger.

Inoltre, una volta caricato jquery è possibile caricare altri elementi in questo modo:

$('head').append("<link href='http://www.somewebsite.com/styles.css' type='text/css' rel='stylesheet'>"); 

Altri suggerimenti

Controlla anche le pagine di GreaseMonkeyWiki su utilizzando JQuery in uno script GreaseMonkey e su @ richiedono blocco.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top