0

プラグイン内でセレクターを文字列「myClass」として取得する方法はありますか?セレクタープロパティを試しましたが、空の文字列が返されます。

そのセレクタープロパティに関するドキュメントさえ見つかりませんでした。誰かが私に何かを教えてもらえますか?

または私は間違った道にいますか?

プラグインを

    $(".myClass").myPlugin();​

コードへのリンク:http: //jsfiddle.net/zs4mY/1/

4

1 に答える 1

4

ドキュメントはありませんが、jQuery1.0からjQuery1.7.2まで同じです。

(function($) {
    $.fn.myPlugin = function(options) {
        var settings = $.extend({}, options),
            selector = this.selector;
        this.each(function() {
            console.log(selector); //This is a different function, `this` is not the same `this` anymore
        })
    }
})(jQuery);
$(".myClass").myPlugin();​

http://jsfiddle.net/zs4mY/4/

ただし、プラグインではこれにまったく依存しません。セレクターが無意味であるか利用できないjQueryオブジェクトを作成する方法は他にもたくさんあります。

$("body").siblings("div").prev("ul").nextAll("lol").selector
//"body.siblings(div).prev(ul).nextAll(lol)"
$("<div>").selector
//""
于 2012-07-19T13:28:02.650 に答える