3
(function( $ ){

$.fn.foo = function(params) {

    params = $.extend( {
        on: false
    }, params);

    this.each(function(){
        if(params.on) {
            function alertDate(){
                alert('FOO BAR!!!');
            }
        }
    });
};
})( jQuery );

スクリプトから「alertDate()」関数にアクセスするにはどうすればよいですか?

私が使用する場合:

$('#test').foo()

関数へのアクセス権を私に与えます、わかりました、すべてうまくいきます、私はthis.each(function(){})で内部的に関数 "alertDate()"へのアクセス権を取得します。

次のような方法で外部から関数「alertDate()」にアクセスしたい。

$('#text').foo({on: 'true'}).each().alertDate();

これどうやってするの?

よろしくお願いします。英語が下手でごめんなさい

4

2 に答える 2

2

alertDate()関数を内部と外部の両方で使用できるように、これをどのように処理するかを次に示します。

$.fn.foo = function(params) {
    params = $.extend( {
        on: false
    }, params);

    this.alertDate = function(){
        alert("FOO BAR!!!");
    }

    this.each(function(){
        if(params.on) {
            this.alertDate();
        }
    });

    return this; 
};

//Externally the alertDate function could be called as:
$("test").foo().alertDate();
于 2013-01-10T14:05:56.793 に答える
0

このようなことはできますが、これはプラグインが通常機能する方法ではありません。

$.fn.foo = function() {
    function bar() { 
        alert("bar");
    } 
    this.bar = bar; 
    return this; 
};

$("a").foo().bar();
于 2013-01-10T13:49:18.183 に答える