0

ウィジェットの作成に関するこのチュートリアルに従っています

そのチュートリアルでは、jquery がページに存在するかどうかをテストし、存在しない場合はそれをロードしています。

このフィドルで彼のコードを再作成しました

別のオブジェクト CssLoader を追加しましたが、そのオブジェクト内で jquery を使用できません。私のアラートが機能していないことがわかります。

CssLoader および作成したその他のオブジェクトで jquery を使用できるようにするにはどうすればよいですか?

4

2 に答える 2

1

私はちょうどあなたのコードを微調整しました

var CssLoader = (function(){
    var $=''; //the global $ inside CssLoader
    function init($, cssPathArray){ // Receive the jquery in the first argument
        $=jq; // assign jQuery to global $, so it'll be available inside CssLoader
        alert( $('body') );            
    }

    return {
        init : init
    };
})();

そして、関数main呼び出しCssLoader.initの中で次のように

CssLoader.init($, ['cssPath1', 'cssPath2']); // Pass the jquery in the first argument

デモ。

于 2012-06-26T16:51:21.257 に答える
0

最初に、jQuery をローカライズしてから、別の無名関数からそれを呼び出そうとします。なぜこれをやろうとしているのですか?

ただし、次のドキュメントが役立つはずです: http://docs.jquery.com/Plugins/Authoring

于 2012-06-26T16:40:34.020 に答える