JQuery過濾器
經過一晚上的查找整理,終於整理出一套應該算最全面的JQuery選擇過濾器的方法了。所有代碼均經過測試。
首先HTML代碼

< head >
< script type ="text/javascript" src ="JQuery/jquery-1.5.1.js" ></ script >
</ head >
< body >
< form name ="form1" id ="form1" class ="form1" action ="" method ="post" >
< table name ="table1" id ="table1" class ="table1" >
< tr name ="tr1" id ="tr1" class ="tr1" >
< td name ="td11" id ="td11" class ="td11" nowrap >
< input type ="text" name ="text11" id ="text11" class ="text11" value ="text11" />
< input type ="button" name ="button11" id ="button11" class ="button11" value ="button11" />
</ td >
< td name ="td12" id ="td12" class ="td12" >
< input type ="text" name ="text12" id ="text12" class ="text12" value ="text12" />
< input type ="hidden" name ="hidden12" id ="hidden12" class ="hidden12" value ="hidden12" />
</ td >
< td name ="td13" id ="td13" class ="td13" >
< input type ="text" name ="text13" id ="text13" class ="text13" value ="text13" />
</ td >
</ tr >
< tr name ="tr2" id ="tr2" class ="tr2" >
< td name ="td21" id ="td21" class ="td21" >
< input type ="password" name ="password21" id ="password21" class ="password21" value ="password21" />
< input type ="radio" name ="radio21" id ="radio21" class ="radio21" value ="radio21" checked />
< input type ="checkbox" name ="checkbox21" id ="checkbox21" class ="checkbox21" value ="checkbox21" checked />
</ td >
< td name ="td22" id ="td22" class ="td22" nowrap >
< input type ="submit" name ="submit22" id ="submit22" class ="submit22" value ="submit22" />
< input type ="image" name ="image22" id ="image22" class ="image22" value ="image22" />
< input type ="reset" name ="reset22" id ="reset22" class ="reset22" value ="reset22" />
</ td >
< td name ="td23" id ="td23" class ="td23" >
< input type ="file" name ="file23" id ="file23" class ="file23" value ="file23" />
</ td >
</ tr >
< tr name ="tr3" id ="tr3" class ="tr3" >
< td name ="td31" id ="td31" class ="td31" >
< select name ="select31" size ="1" >
< option value ="select311" > option1 </ option >
< option value ="select312" selected > option2 </ option >
< option value ="select313" > option3 </ option >
</ select >
</ td >
< td name ="td32" id ="td32" class ="td32" ></ td >
< td name ="td33" id ="td33" class ="td33" ></ td >
</ tr >
</ table >
</ form >
< h1 > 你好世界! </ h1 >
</ body >
</ html >
JS代碼
1.DOM對象與JQuery包裝集
1.通過document.getElementById(),document.getElementsByName()等取的就是DOM對象或DOM對象集,前者取的是對象,后者取得DOM對象集
var text11_dom = document.getElementsByName( " text11 " )[ 0 ];
var text11_dom = document.all.text11; // 此處text11即可以是name值也可以是id值
var text11_dom = document.all[ 10 ];
2.如果要使用JQuery提供的函數首先要構造JQuery包裝集,通過$()返回的即是JQuery包裝集。
2.JQuery包裝集與DOM對象互相轉換
1.DOM對象不能使用JQuery屬性方法,但DOM對象可以通過$()轉換成JQuery包裝集
var text11_jquery = $(text11_dom);
2.JQuery包裝集可以使用部分DOM對象的屬性方法如.length,但也有個別屬性方法不能使用如.value,可以通過在JQuery包裝集后面加中括號及索引值獲取對應DOM對象
3.在each循環時或觸發事件時的this也是DOM對象
var text11_dom_value = this .value;
alert(text11_dom_value);
});
3.$符號在JQuery中代表對JQuery對象的引用,JQuery的核心方法有四個
1.jQuery(html[,ownerDocument]):根據HTML原始字符串動態創建Dom元素
2.jQuery( elements ):將一個或多個Dom對象封裝為jQuery包裝集,就是上面的DOM對象與JQuery包裝集轉換
3.jQuery( callback ):$(document).ready()的簡寫方式
alert( " Hello! " );
});
4.JQuery(selector[,context]):在指定范圍內查找符合條件的JQuery包裝集,context為查找范圍,context可以是DOM對象集也可以是JQuery包裝集
在所有tr標簽中查找id為text11元素的JQuery包裝集
===================jQuery選擇器===================
1. 基礎選擇器 Basics
1.根據標簽名進行選擇
2.根據id值選取
3.根據class值進行選取
4.同時選擇多個符合條件的JQuery包裝集用,號分隔條件
5.選擇所有DOM元素
2.層次選擇器 Hierarchy
1.從所有tr標簽中獲取其下面的所有id值為text11的元素
2.獲取所有td標簽下的所有直接input子元素
3.獲取id為text11元素后面的class為button11元素,只獲取一個符合條件的元素。text11與button11在地位上屬於同級關系
4.獲取id為text11元素后面的所有class為button11的元素
3.基本過濾器 Basic Filters
1.獲取第一個input元素
2.獲取最后一個input元素
3.獲取所有未被選中的input元素
4.第一個input元素算一,查找所有第奇數個的input元素
5.從第二個input算起,查找所有第偶數個的input元素
6.查找索引為1的input元素,索引值從0算起
7.查找索引大於0的所有input元素
8.查找索引小於2的所有input元素
9.獲取頁面所有<h>標題元素
10.獲取所有正在執行動畫效果的元素
4. 內容過濾器 Content Filters
1.查找所有html內容含有"你好世界!"的h1元素
2.獲取所有不含子標簽或html內容為空的td元素
3.查找所有含有input子元素的td元素
4.查找所有含有子標簽或有html內容的td元素
5.可見性過濾器 Visibility Filters
1.查找所有隱藏的input元素
2.查找所有可見的input元素
6.屬性過濾器 Attribute Filters
以下id,name等屬性名,也可換成其他屬性名,或自定義的屬性名
1.查找所有含有id屬性的input元素
2.查找name值為text11的input元素
3.查找name值不等於text11的所有input元素
4.查找name值以text開頭的input元素
5.查找name值以11結尾的所有input元素
6.查找name值中含有ext的所有input元素
7.查找所有含有id屬性並且name值中含有ext的input元素
7.子元素過濾器 Child Filters
1.查找所有在父元素中的所有子元素中排第2的input元素
nth-child()里參數可選even在這里算偶數,odd在這里算奇數,n任意數即選取所有有父元素的input元素,數字是直接選排在第幾個的input元素,第一個input元素算一
2.查找所有在父元素中的所有子元素中排第一的input元素
3.查找所有在父元素中所有子元素中排最后一個的input元素
4.查找所有在父元素中是唯一子元素的input元素
8.表單選擇器 Forms
1.查找所有input元素
2.查找所有文本框元素
3.查找所有密碼框元素
4.查找所有復選框
5.查找所有提交按鈕元素
6.查找所有圖像域元素
7.查找所有重置按鈕元素
8.查找所有按鈕元素
9.查找所有文件域元素
9.表單過濾器 Form Filters
1.查找所有可用的input元素
2.查找所有不可用的input元素
3.查找所有選中的單選復選框
4.查找所有選中的下拉框