ホームページ > ウェブフロントエンド > jsチュートリアル > jQuery フィルター メソッド filter() は特別な属性を持つ要素を選択します_jquery

jQuery フィルター メソッド filter() は特別な属性を持つ要素を選択します_jquery

WBOY
リリース: 2016-05-16 16:44:37
オリジナル
1568 人が閲覧しました

ここで、背景画像を持つすべての要素を選択する必要があります。
この問題を完了するには、選択式を使用できません。
要素は、jQuery の DOM フィルター メソッド filter() に基づいて選択できます。

jQuery のフィルター メソッドでは、パラメータとして文字列 (つまりセレクター式) を渡すことができます。
または関数の戻り値が渡されます。要素が選択されているかどうかを定義します。
渡された関数は現在の選択セット内の各要素に対して実行されます。
関数が false を返すたびに、対応する関数が選択セットから削除されます。 true の場合、対応する要素
は影響を受けません。

コードをコピーします コードは次のとおりです:

jQuery('*').filter(function(){
return !!jQuery(this).css('background');
});

上記のコードは、背景画像を持つすべての要素を選択します。
最初のコレクションはすべての要素 (*) です。次に、関数をパラメーターとして使用して、
この関数が各コレクションに対して実行されます。属性の背景
存在する場合は、それを保持します。それ以外の場合は、この要素を結果セットから削除します。

表示される内容は、未定義の空の型であり、もちろん false です。
関数呼び出しがこれらの値を返した場合、関数は false を返すため、背景属性のない

要素はコレクションから削除されます。これは、jQuery がこれらの戻り値をブール型に変換するためです。
そうすることで、コードを見た人がその意図を確実に理解できるようになります。 )。

filter() を渡す関数では、this キーワードを介して現在の要素を参照できます。
それを jQuery 関数に含めると、
this //通常の要素オブジェクト。
jQuery(this) //jQuery オブジェクト。


コードをコピーします。 > コードは次のとおりです: jQuery('div').filter(function(){ var width = jQuery(this).width;
return width >100 && widht < 200;
//10 個または 20 個の子要素を持つ要素を返します。
var = jQuery(this).childern().length;
return Children ===10 || Children ===20;


以下はコード例: 背景色の要素を決定し、すべての背景色を黒に変更します。




コードをコピー

コードは次のとおりです。
head>