1

jqueryプラグインを作成しようとしていますが、有名な「これ」について質問があります。

カスタムプラグインの呼び出しは次のとおりです。

$('.selector').myPlugin({
        test: $(this).attr('rel')
});

そして今、私のプラグインのどこかに:

$.myPlugin = function (options) {
    alert(options.test);
}

私の質問は:$(this)を使用してプラグインでセレクターのRel属性を使用するにはどうすればよいですか?

前のコードは常に「これ」がドキュメントであることを教えてくれます。

どうもありがとう

4

1 に答える 1

3

$(this)そのオブジェクトリテラルに期待するものではありません。を使用してループするeach

$('.selector').each(function() {
    $(this).myPlugin({
        test: $(this).attr('rel')
    });
});

内部eachthisは、呼び出し元の関数のコンテキストではなく、正しい要素を指します。

于 2012-08-06T16:03:19.177 に答える