jQueryでのfilter()とfind()の違い
1088 ワード
1、filterメソッドはマッチング要素をフィルタし、findメソッドはマッチング要素の子孫要素をフィルタします.
eg:
alert( $find.html() ) ;
出力:テスト2
var $filter = $("div").filter(".rain"); alert( $filter.html() );
出力:
2、end()方法:
主にjQueryのチェーン属性(コマンドチェーン)を利用する場合、jQueryの方が役に立ちます.コマンドチェーンを使用しない場合は、通常、変数名で前のオブジェクトを呼び出すので、スタックを操作する必要はありません.ただしend()により、すべてのメソッド呼び出しを直列に接続できます.
このコマンドチェーンは、最初のリストのクラス名fooというアイテムを取得し、背景を赤に設定します.end()はオブジェクトをfind()を呼び出す前の状態に復元するので、2番目のfind()は
eg:
<div class="css">
<p class="rain"> 1</p>
</div>
<div class="rain">
<p> 2</p>
</div>
var $find = $("div").find(".rain"); alert( $find.html() ) ;
出力:テスト2
var $filter = $("div").filter(".rain"); alert( $filter.html() );
出力:
テスト2
2、end()方法:
主にjQueryのチェーン属性(コマンドチェーン)を利用する場合、jQueryの方が役に立ちます.コマンドチェーンを使用しない場合は、通常、変数名で前のオブジェクトを呼び出すので、スタックを操作する必要はありません.ただしend()により、すべてのメソッド呼び出しを直列に接続できます.
$('ul.first').find('.foo').css('background-color', 'red')
.end()
.find('.bar').css('background-color', 'green');
このコマンドチェーンは、最初のリストのクラス名fooというアイテムを取得し、背景を赤に設定します.end()はオブジェクトをfind()を呼び出す前の状態に復元するので、2番目のfind()は
- 内の'を検索する.bar'は、リストの
- ではなく、一致する要素の背景を緑に設定します.最後の結果、第1のリストの項目1と項目3には色付きの背景が設定され、第2のリストの項目には何の変化もない.