0

プラグインメソッド「getSomeWhat」を使用して「myplugin」というjQueryプラグインを作成しています。このメソッドは、「。someclass」内の要素のattr('id')などのコレクションを返す場合があります。連鎖性を維持したいのですが、インターネットからは見つかりません。

達成方法を教えてください。

$(".someclass").myplugin('getSomeWhat').each(function() {
    //some stuff for each somewhat
});

ありがとう!

ウィリアム・チェ

4

1 に答える 1

2

jQuery以外のオブジェクトを返し、連鎖性を維持することはできません。連鎖性がjQueryオブジェクトに依存しているという理由だけで。もちろん、jQueryオブジェクトを返し、それにチェーンすることは完全に可能ですが、それはルックアップメソッドの目的をやや損なうことになります。

返されたセットを反復処理する場合は、次のように実行できます。

var data = $(".someclass").myplugin('getSomeWhat');
$.each(data, function(i, v) {
    //i is index, v is value (if using object props, i is the propName
});

これにより、jQueryの汎用イテレータを使用できます。配列とオブジェクトをシームレスに繰り返すことができます。

于 2011-02-24T10:37:15.497 に答える