1

私は長い間 jquery を使用しており、自分でプラグインを作成することを考えています。しかし、チュートリアルがどんなに簡単だったとしても、チェーンのアイデアを本当に理解することはできません. この非常に単純なプラグインがあるとします....

(function($){
      $.test = function(){

        $.test.one = function(){ alert("1");};

        $.test.two = function(){ alert("2");};

        return this.each(function(){
             (what to write here????)
        });
      };
 })(jQuery);

私が達成したいのは、たとえば次のように呼び出すときです

var myplugin = $.test();
myplugin.one().two();

しかし、それは私にエラーを返します。申し訳ありませんが、簡単なチュートリアルをグーグルで何度も試しましたが、うまくいきません

4

3 に答える 3

7

これをやろうとしていますか?

(function($){
    $.fn.test = function(){
        var self = this;
        this.one = function(){ alert("1"); return self; };
        this.two = function(){ alert("2"); return self; };
        return this;
    };
}(jQuery));


var myplugin = $().test();
myplugin.one().two();

フィドルの例: http://jsfiddle.net/kzzMY/

補足として、この件に関してこの有用なリソースを強くお勧めします: http://jqueryboilerplate.com/

于 2012-09-05T08:25:44.453 に答える
1

ここに私のプラグインテンプレートがあります:

(function($){
  $.fn.pluginName = function(){

  }
  return this;
})(jQuery)
于 2012-09-05T08:22:44.433 に答える
1

自分で jQuery プラグインを作成したことはありませんが、確実にメソッドから何かを返す必要がoneありtwo(おそらく ' this')、チェーン内の 2 番目のメソッドが呼び出されるオブジェクトがありません。

于 2012-09-05T08:23:25.300 に答える