DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript綜合知識 >> JQuery選擇器、過濾器大整理
JQuery選擇器、過濾器大整理
編輯:JavaScript綜合知識     

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

 

   首先HTML代碼

 代碼如下:
HTML Code

 

<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.getElementById("text11");

  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包裝集。

  代碼如下:

  var text11_jquery=$("#text11");

  2.JQuery包裝集與DOM對象互相轉換

  1.DOM對象不能使用JQuery屬性方法,但DOM對象可以通過$()轉換成JQuery包裝集

  代碼如下:

  var text11_dom=document.getElementById("text11");

  var text11_jquery=$(text11_dom);

  2.JQuery包裝集可以使用部分DOM對象的屬性方法如.length,但也有個別屬性方法不能使用如.value,可以通過在JQuery包裝集後面加中括號及索引值獲取對應DOM對象

   代碼如下:

  var text11_dom=$("#text11")[0];

  3.在each循環時或觸發事件時的this也是DOM對象

   代碼如下:

  $("#text11").click(function(){

  var text11_dom_value=this.value;

  alert(text11_dom_value);

  });

  3.$符號在JQuery中代表對JQuery對象的引用,JQuery的核心方法有四個

  1.jQuery(html[,ownerDocument]):根據HTML原始字符串動態創建Dom元素

   代碼如下:

  $("

Hello!

").appendTo("body");

 

  2.jQuery( elements ):將一個或多個Dom對象封裝為jQuery包裝集,就是上面的DOM對象與JQuery包裝集轉換

  3.jQuery( callback ):$(document).ready()的簡寫方式

  代碼如下:

  $(function(){

  alert("Hello!");

  });

  4.JQuery(selector[,context]):在指定范圍內查找符合條件的JQuery包裝集,context為查找范圍,context可以是DOM對象集也可以是JQuery包裝集

  在所有tr標簽中查找id為text11元素的JQuery包裝集

     代碼如下:

  var text11_query=$("#text11","tr");

  ===================jQuery選擇器===================

  1. 基礎選擇器 Basics

  1.根據標簽名進行選擇

  代碼如下:

  var input_query=$("input");

  2.根據id值選取

  代碼如下:

  var text11_query=$("#text11");

  3.根據class值進行選取

   代碼如下:

  var text11_query=$(".text11");

  4.同時選擇多個符合條件的JQuery包裝集用,號分隔條件

  代碼如下:

  var text_query=$("#text11,.text12");

  5.選擇所有DOM元素

  代碼如下:

  var all_query=$("*");

  2.層次選擇器 Hierarchy

  1.從所有tr標簽中獲取其下面的所有id值為text11的元素

  代碼如下:

  var text11_query=$("tr #text11");

  2.獲取所有td標簽下的所有直接input子元素

  代碼如下:

  var input_query=$("td>input");

  3.獲取id為text11元素後面的class為button11元素,只獲取一個符合條件的元素。text11與button11在地位上屬於同級關系

  代碼如下:

  var button11_query=$("#text11+.button11");

  4.獲取id為text11元素後面的所有class為button11的元素

  代碼如下:

  var button11_query=$("#text11~.button11");

  3.基本過濾器 Basic Filters

  1.獲取第一個input元素

   代碼如下:

  var input_query=$("input:first");

  2.獲取最後一個input元素

   代碼如下:

  var input_query=$("input:last");

  3.獲取所有未被選中的input元素

   代碼如下:

  var input_query=$("input:not(:checked)");

  4.第一個input元素算一,查找所有第奇數個的input元素

   代碼如下:

  var input_query=$("input:even");

  5.從第二個input算起,查找所有第偶數個的input元素

  代碼如下:

  var input_query=$("input:odd");

  6.查找索引為1的input元素,索引值從0算起

  代碼如下:

  var input_query=$("input:eq(1)");

  7.查找索引大於0的所有input元素

  代碼如下:

  var input_query=$("input:gt(0)");

  8.查找索引小於2的所有input元素

  代碼如下:

  var input_query=$("input:lt(2)");

  9.獲取頁面所有標題元素

  代碼如下:

  var h_query=$(":header");

  10.獲取所有正在執行動畫效果的元素

  代碼如下:

  var animated_query=$(":animated");

  4. 內容過濾器 Content Filters

  1.查找所有html內容含有"你好世界!"的h1元素

   代碼如下:

  var h1_query=$("h1:contains('你好世界!')");

  2.獲取所有不含子標簽或html內容為空的td元素

  代碼如下:

  var td_query=$("td:empty");

  3.查找所有含有input子元素的td元素

   代碼如下:

  var td_query=$("td:has(input)");

  4.查找所有含有子標簽或有html內容的td元素

   代碼如下:

  var td_query=$("td:parent");

  5.可見性過濾器 Visibility Filters

  1.查找所有隱藏的input元素

   代碼如下:

  var input_query=$("input:hidden");

  2.查找所有可見的input元素

   代碼如下:

  var input_query=$("input:visible");

  6.屬性過濾器 Attribute Filters

  1.查找所有含有id屬性的input元素

  代碼如下:

  var input_query=$("input[id]");

  2.查找name值為text11的input元素

  代碼如下:

  var input_query=$("input[name='text11']");

  3.查找name值不等於text11的所有input元素

  代碼如下:

  var input_query=$("input[name!='text11']");

  4.查找name值以text開頭的input元素

  代碼如下:

  var input_query=$("input[name^='text']");

  5.查找name值以11結尾的所有input元素

   代碼如下:

  var input_query=$("input[name$='11']");

  6.查找name值中含有ext的所有input元素

   代碼如下:

  var input_query=$("input[name*='ext']");

  7.查找所有含有id屬性並且name值中含有ext的input元素

   代碼如下:

  var input_query=$("input[id][name*='ext']");

  7.子元素過濾器 Child Filters

  1.查找所有在父元素中的所有子元素中排第2的input元素

  nth-child()裡參數可選even在這裡算偶數,odd在這裡算奇數,n任意數即選取所有有父元素的input元素,數字是直接選排在第幾個的input元素,第一個input元素算一

   代碼如下:

  var input_query=$("input:nth-child(2)");

  2.查找所有在父元素中的所有子元素中排第一的input元素

  代碼如下:

  var input_query=$("input:first-child");

  3.查找所有在父元素中所有子元素中排最後一個的input元素

   代碼如下:

  var input_query=$("input:last-child");

  4.查找所有在父元素中是唯一子元素的input元素

   代碼如下:

  var input_query=$("input:only-child");

  8.表單選擇器 Forms

  1.查找所有input元素

   代碼如下:

  var input_query=$(":input");

  2.查找所有文本框元素

   代碼如下:

  var text_query=$(":text");

  3.查找所有密碼框元素

   代碼如下:

  var password_query=$(":password");

  4.查找所有復選框

   代碼如下:

  var checkbox_query=$(":checkbox");

  5.查找所有提交按鈕元素

   代碼如下:

  var submit_query=$(":submit");

  6.查找所有圖像域元素

   代碼如下:

  var image_query=$(":image");

  7.查找所有重置按鈕元素

   代碼如下:

  var reset_query=$(":reset");

  8.查找所有按鈕元素

   代碼如下:

  var button_query=$(":button");

  9.查找所有文件域元素

  代碼如下:

  var file_query=$(":file");

  9.表單過濾器 Form Filters

  1.查找所有可用的input元素

   代碼如下:

  var input_query=$("input:enabled");

  2.查找所有不可用的input元素

   代碼如下:

  var input_query=$("input:disabled");

  3.查找所有選中的單選復選框

   代碼如下:

  var input_query=$("input:checked");

  4.查找所有選中的下拉框

   代碼如下:

  var option_query=$("option:selected");

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved