5

そのため、Greasemonkey と jQuery 1.2.6 を問題なく連携させることができましたが、Eric Martin の SimpleModal プラグイン ( http://www .ericmmartin.com/projects/simplemodal/ )。

次のコードは jQuery をロードしますが、SimpleModal を適切にロードする方法がわかりません。

    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();

誰にもアイデアはありますか?ありがとう。

4

2 に答える 2

11

まず、Firebug のデバッグ アクセス権がなくても問題ない場合、jquery を含める最も簡単な方法は、require 設定を使用することです。

// @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 

その行に続いて、他の外部スクリプトを含めることができます。ほとんどの jquery プラグインは、jquery API のように利用できませんが、自分でホストできます。

require を使用すると、すべての読み込みコードをダンプして、次のようにすることもできます。

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

Firebug はバグを報告しますが、デバッガーにステップインすることはできません。

さらに、jquery をロードしたら、次のように他のアイテムをロードできます。

$('head').append("<link href='http://www.somewebsite.com/styles.css' type='text/css' rel='stylesheet'>"); 
于 2009-01-13T15:30:56.820 に答える
2

また、GreaseMonkey スクリプトでの JQuery の使用と @require ブロックに関するGreaseMonkeyWiki ページもチェックしてください

于 2009-02-13T18:19:07.067 に答える