ホームページ > 記事 > ウェブフロントエンド > Xiaoqiang の HTML5 モバイル開発への道 (35) - jQuery のフィルターの詳細説明
1. 基本フィルターセレクター
:first
:last
:not(selector): selectorで一致したノード以外のノード
:even:偶数
:odd:奇数
:eq(index)
:gt( Index) :彼より大きい
:lt(index) :彼より小さい
<html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script> <script> $(function(){ $('#b1').click(function(){ //$('tr:first').css('background-color','#cccccc'); //$('tbody tr:first').css('background-color','#cccccc'); //$('tbody tr:not(#tr2)').css('background-color','#cccccc'); //$('tbody tr:even').css('background-color','#cccccc'); $('tbody tr:eq(2)').css('background-color','#cccccc'); }); }); </script> </head> <body> <table border="1" cellpadding="0" cellspacing="0" width="60%"> <thead> <tr> <td>name</td><td>age</td> </tr> </thead> <tbody> <tr><td>zs</d><td>22</td></tr> <tr id="tr2"><td>ls</d><td>22</td></tr> <tr><td>ww</d><td>22</td></tr> <tr><td>ll</d><td>22</td></tr> </tbody> </table> <input type="button" value="clickMe" id="b1"/> <body> </html>
2. コンテンツフィルターセレクター
:contains(text)
:empty: 子ノードのないノード、または空のテキストコンテンツを持つノード
: has( selector)
:parent: 親ノードを含むノード
<html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script> <script> $(function(){ $('#b1').click(function(){ $(':contains(hello)').css('background','red'); //$(':empty').css('',''); //$('p :has(p)').css('',''); }); }); </script> </head> <body> <p> <p>hello</p> <p>你好</p> <p> <p>java</p> <p> <input type="button" value="clickMe" id="b1"/> </p> </body> </html>
実際、私の目的は画面全体を赤くすることではありません。なぜすべてが赤くなるのでしょうか。以下のコードをもう一度見てください。contains(hell0) の前に p
$('p:contains(hello)').css('background','red');
を追加しました。フルスクリーンではありませんが、背景だけを回転させるにはどうすればよいでしょうか。こんにちは、赤に?これができます
$('p p:contains(hello)').css('background','red');
3. 可視性フィルターセレクター
:hidden
input type="hidden" と display=none:visible
$(function(){ $('#a1').click(function(){ $('p:hidden').css('display','block'); //如过有这个样式则去掉,没有则加上 $('#d1').toggleClass('show'); }); //每点击一次,执行一个函数,循环执行 $('#a1').toggle(function(){ //$('#d1').css('display','block'); $('#d1').show(400); //在400毫秒种打开 //或者使用slow fast normal三个参数 $('#d1').show(slow); },function(){ //$('#d1').css('display','none'); $('#d1').hide(); }); });
4. フィルターセレクター
(1) 属性フィルターセレクター[attribute]
[attribute=value]
[attribute!=value]
<html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script> <script> $(function(){ $('#b1').click(function(){ $('p[id=p1]').html('hello java'); }); }); </script> </head> <body> <p id="p1">hello</p> <p>world</p> <input type="button" value="click" id="b1"/> </body> </html>
(2)、子要素フィルターセレクター: 親ノードの下にある一致する子ノードをすべて返します
:nth-child(index/even/odd)
nは1から始まります
<html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script> <script> $(function(){ $('#b1').click(function(){ $('ul li:nth-child(1)').html('item100'); }); }); </script> </head> <body> <ul> <li>item1</li> <li>item2</li> <li>item3</li> </ul> <ul> <li>item4</li> <li>item5</li> <li>item6</li> </ul> <input type="button" value="click" id="b1"/> </body> </html>
(3), フォームオブジェクト属性フィルターセレクター
:enabled
:disabled //テキスト入力ボックスは入力できません
:checked//選択されたノード
:selected
5. フォームセレクター
:input $(' :input'); すべてを返します input
:text
:pasword
:checkbox
:radio
:submit
:image
:reset
:button
上記は Xiaoqiang の HTML5 モバイル開発パス (35) ——の詳細な説明です関連コンテンツの詳細については、PHP 中国語 Web サイト (www.php.cn) に注目してください。