JQuery選擇器、過(guò)濾器大整理
經(jīng)過(guò)一晚上的查找整理,終于整理出一套應(yīng)該算最全面的JQuery選擇過(guò)濾器的方法了。所有代碼均經(jīng)過(guò)測(cè)試。
首先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對(duì)象與JQuery包裝集
1.通過(guò)document.getElementById(),document.getElementsByName()等取的就是DOM對(duì)象或DOM對(duì)象集,前者取的是對(duì)象,后者取得DOM對(duì)象集
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提供的函數(shù)首先要構(gòu)造JQuery包裝集,通過(guò)$()返回的即是JQuery包裝集。
var text11_jquery=$("#text11");
2.JQuery包裝集與DOM對(duì)象互相轉(zhuǎn)換
1.DOM對(duì)象不能使用JQuery屬性方法,但DOM對(duì)象可以通過(guò)$()轉(zhuǎn)換成JQuery包裝集
var text11_dom=document.getElementById("text11");
var text11_jquery=$(text11_dom);
2.JQuery包裝集可以使用部分DOM對(duì)象的屬性方法如.length,但也有個(gè)別屬性方法不能使用如.value,可以通過(guò)在JQuery包裝集后面加中括號(hào)及索引值獲取對(duì)應(yīng)DOM對(duì)象
var text11_dom=$("#text11")[0];
3.在each循環(huán)時(shí)或觸發(fā)事件時(shí)的this也是DOM對(duì)象
$("#text11").click(function(){
var text11_dom_value=this.value;
alert(text11_dom_value);
});
3.$符號(hào)在JQuery中代表對(duì)JQuery對(duì)象的引用,JQuery的核心方法有四個(gè)
1.jQuery(html[,ownerDocument]):根據(jù)HTML原始字符串動(dòng)態(tài)創(chuàng)建Dom元素
$("<div><p>Hello!</p></div>").appendTo("body");
2.jQuery( elements ):將一個(gè)或多個(gè)Dom對(duì)象封裝為jQuery包裝集,就是上面的DOM對(duì)象與JQuery包裝集轉(zhuǎn)換
3.jQuery( callback ):$(document).ready()的簡(jiǎn)寫(xiě)方式
$(function(){
alert("Hello!");
});
4.JQuery(selector[,context]):在指定范圍內(nèi)查找符合條件的JQuery包裝集,context為查找范圍,context可以是DOM對(duì)象集也可以是JQuery包裝集
在所有tr標(biāo)簽中查找id為text11元素的JQuery包裝集
var text11_query=$("#text11","tr");
===================jQuery選擇器===================
1. 基礎(chǔ)選擇器 Basics
1.根據(jù)標(biāo)簽名進(jìn)行選擇
var input_query=$("input");
2.根據(jù)id值選取
var text11_query=$("#text11");
3.根據(jù)class值進(jìn)行選取
var text11_query=$(".text11");
4.同時(shí)選擇多個(gè)符合條件的JQuery包裝集用,號(hào)分隔條件
var text_query=$("#text11,.text12");
5.選擇所有DOM元素
var all_query=$("*");
2.層次選擇器 Hierarchy
1.從所有tr標(biāo)簽中獲取其下面的所有id值為text11的元素
var text11_query=$("tr #text11");
2.獲取所有td標(biāo)簽下的所有直接input子元素
var input_query=$("td>input");
3.獲取id為text11元素后面的class為button11元素,只獲取一個(gè)符合條件的元素。text11與button11在地位上屬于同級(jí)關(guān)系
var button11_query=$("#text11+.button11");
4.獲取id為text11元素后面的所有class為button11的元素
var button11_query=$("#text11~.button11");
3.基本過(guò)濾器 Basic Filters
1.獲取第一個(gè)input元素
var input_query=$("input:first");
2.獲取最后一個(gè)input元素
var input_query=$("input:last");
3.獲取所有未被選中的input元素
var input_query=$("input:not(:checked)");
4.第一個(gè)input元素算一,查找所有第奇數(shù)個(gè)的input元素
var input_query=$("input:even");
5.從第二個(gè)input算起,查找所有第偶數(shù)個(gè)的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.獲取頁(yè)面所有<h>標(biāo)題元素
var h_query=$(":header");
10.獲取所有正在執(zhí)行動(dòng)畫(huà)效果的元素
var animated_query=$(":animated");
4. 內(nèi)容過(guò)濾器 Content Filters
1.查找所有html內(nèi)容含有"你好世界!"的h1元素
var h1_query=$("h1:contains('你好世界!')");
2.獲取所有不含子標(biāo)簽或html內(nèi)容為空的td元素
var td_query=$("td:empty");
3.查找所有含有input子元素的td元素
var td_query=$("td:has(input)");
4.查找所有含有子標(biāo)簽或有html內(nèi)容的td元素
var td_query=$("td:parent");
5.可見(jiàn)性過(guò)濾器 Visibility Filters
1.查找所有隱藏的input元素
var input_query=$("input:hidden");
2.查找所有可見(jiàn)的input元素
var input_query=$("input:visible");
6.屬性過(guò)濾器 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開(kāi)頭的input元素
var input_query=$("input[name^='text']");
5.查找name值以11結(jié)尾的所有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.子元素過(guò)濾器 Child Filters
1.查找所有在父元素中的所有子元素中排第2的input元素
nth-child()里參數(shù)可選even在這里算偶數(shù),odd在這里算奇數(shù),n任意數(shù)即選取所有有父元素的input元素,數(shù)字是直接選排在第幾個(gè)的input元素,第一個(gè)input元素算一
var input_query=$("input:nth-child(2)");
2.查找所有在父元素中的所有子元素中排第一的input元素
var input_query=$("input:first-child");
3.查找所有在父元素中所有子元素中排最后一個(gè)的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.查找所有復(fù)選框
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.表單過(guò)濾器 Form Filters
1.查找所有可用的input元素
var input_query=$("input:enabled");
2.查找所有不可用的input元素
var input_query=$("input:disabled");
3.查找所有選中的單選復(fù)選框
var input_query=$("input:checked");
4.查找所有選中的下拉框
var option_query=$("option:selected");
- jQuery中可見(jiàn)性過(guò)濾器簡(jiǎn)單用法示例
- jQuery中過(guò)濾器的基本用法示例
- JQuery的常用選擇器、過(guò)濾器、方法全面介紹
- jQuery使用contains過(guò)濾器實(shí)現(xiàn)精確匹配方法詳解
- jQuery可見(jiàn)性過(guò)濾器:hidden和:visibility用法實(shí)例
- jQuery表單域?qū)傩赃^(guò)濾器用法分析
- Jquery 過(guò)濾器(first,last,not,even,odd)的使用
- 從jquery的過(guò)濾器.filter()方法想到的
- jQuery contains過(guò)濾器實(shí)現(xiàn)精確匹配使用方法
- jQuery ajax 路由和過(guò)濾器使用說(shuō)明
- jquery中通過(guò)過(guò)濾器獲取表單元素的實(shí)現(xiàn)代碼
- JQuery 選擇器、過(guò)濾器介紹
- jQuery中內(nèi)容過(guò)濾器簡(jiǎn)單用法示例
相關(guān)文章
使用JQuery實(shí)現(xiàn)Ctrl+Enter提交表單的方法
這篇文章主要介紹了使用JQuery實(shí)現(xiàn)Ctrl+Enter提交表單的方法,需要的朋友可以參考下2015-10-10Jquery屬性的獲取/設(shè)置及樣式添加/刪除操作技巧分析
這篇文章主要介紹了Jquery屬性的獲取/設(shè)置及樣式添加/刪除操作技巧,結(jié)合實(shí)例形式分析了jquery針對(duì)屬性與樣式的相關(guān)獲取、設(shè)置、添加、刪除等相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-12-12推薦40個(gè)簡(jiǎn)單的 jQuery 導(dǎo)航插件和教程(下篇)
在下面的集合中,你會(huì)發(fā)現(xiàn)很多便利的 jQuery 導(dǎo)航插件和有用的教程,幫助你實(shí)現(xiàn)充滿(mǎn)吸引力的網(wǎng)站導(dǎo)航,讓你網(wǎng)站更有組織性和交互性2012-09-09Query常用DIV操作獲取和設(shè)置長(zhǎng)度寬度的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇Query常用DIV操作獲取和設(shè)置長(zhǎng)度寬度的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09使用jQuery5分鐘快速搞定雙色表格的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇使用jQuery5分鐘快速搞定雙色表格的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08Jquery跨域獲得Json時(shí)invalid label錯(cuò)誤的解決辦法
這兩天用 Jquery 跨域取數(shù)據(jù)的時(shí)候,經(jīng)常碰到 invalid label 這個(gè)錯(cuò)誤,十分的郁悶,老是取不到服務(wù)器端發(fā)送回來(lái)的 json 值,一般跨域用到的兩個(gè)方法為:$.ajax 和 $.getJson2011-01-01jquery模擬按下回車(chē)實(shí)現(xiàn)代碼
今天要實(shí)現(xiàn)一個(gè)回車(chē)事件,一開(kāi)始用了 js 的方法,怎么都不行,原來(lái)JQuery有點(diǎn)不同于JS的,而且比起JS簡(jiǎn)單多了2011-09-09jQuery實(shí)現(xiàn)列表內(nèi)容的動(dòng)態(tài)載入特效
這里給大家分享的是使用jQuery實(shí)現(xiàn)列表內(nèi)容的動(dòng)態(tài)載入的特效,效果相當(dāng)棒,后面附上瀑布流的實(shí)現(xiàn)思路和關(guān)鍵代碼,有需要的小伙伴可以參考下。2015-08-08