舉例講解jQuery中可見(jiàn)性過(guò)濾選擇器的使用
可見(jiàn)性過(guò)濾器
可見(jiàn)性過(guò)濾器根據(jù)元素的可見(jiàn)性和不可見(jiàn)性來(lái)選擇相應(yīng)的元素。
| 過(guò)濾器名 | jQuery 語(yǔ)法 | 說(shuō)明 | 返回 |
| :hidden | $(':hidden') | 選取所有不可見(jiàn)元素 | 集合元素 |
| :visible | $(':visible') | 選取所有可見(jiàn)元素 | 集合元素 |
$('p:hidden).size(); //元素p 隱藏的元素
$('p:visible').size(); //元素p 顯示的元素
注意::hidden 過(guò)濾器一般是包含的內(nèi)容為:CSS 樣式為display:none、input 表單類型為type="hidden"和visibility:hidden 的元素。
示例
jQuery的可見(jiàn)性選擇器是根據(jù)元素的可見(jiàn)和不可見(jiàn)狀態(tài)來(lái)選擇相對(duì)應(yīng)的元素。主要有兩個(gè):可見(jiàn):visible和不可見(jiàn):hidden。今天我們主要來(lái)學(xué)習(xí)這兩個(gè)選擇器的使用。先來(lái)看一個(gè)HTML結(jié)構(gòu),方便學(xué)習(xí)這兩個(gè)選擇器的使用:
<div class="wrap"> <span></span> <div></div> <div style="display:none">Hider!</div> <div style="visibility:hidden">Hider!</div> <div class="startHidden">Hider!</div> <div class="startVisibilityHidden">Hider!</div> <div></div> <form> <input type="hidden" /> <input type="hidden" /> <input type="hidden" /> </form> <span></span> <button>顯示隱然元素</button> </div>
CSS Code:
<style type="text/css">
.wrap {
width: 500px;
padding: 10px;
margin: 20px auto;
border: 1px solid #ccc;
}
.wrap div {
width: 70px;
height: 40px;
background: #0083C1;
margin: 5px;
float: left
}
span {
display: block;
clear: left;
color: #008000;
}
.startHidden {
display: none;
}
.startVisibilityHidden {
visibility: hidden;
}
</style>
初步效果

下面我們分別來(lái)看看這兩個(gè)選擇器的語(yǔ)法和使用規(guī)則以及所起的作用
一、不可見(jiàn)性選擇器::hidden
選擇器
$("E:hidden") //E表示元素標(biāo)簽
或
$(":hidden") //選擇所有隱藏元素
描述:
E:hidden表示選擇隱藏的E元素,而:hidden表示選取所有不可見(jiàn)的元素
返回值:
集合元素
實(shí)例:
$(document).ready(function(){
$("span:first").text("Found " + $(":hidden",document.body).length + " hidden elements total.");//在第一個(gè)span標(biāo)簽中增加文本,顯示body中有多少個(gè)元素隱藏
$("div:hidden").show("3000");//顯示所有隱藏的div元素
$("span:last").text("Found " + $("input:hidden").length + " hidden inputs");//在最后一個(gè)span標(biāo)簽中增加文本,顯示有多少input隱藏
});
功能:
":hidden"選取所有不可見(jiàn)的元素,有的瀏覽器還包含了<header>內(nèi)所有標(biāo)簽,而且這里所指的不可見(jiàn)元素是樣式為“display:none”和表單“type="hidden"”兩種,而不包含“visibility:hidden”的隱藏元素。另外提醒大家,“:hidden”有的會(huì)導(dǎo)致選擇中<header>內(nèi)所有標(biāo)簽,所以建議前面加個(gè)元素標(biāo)簽。
效果:

二、可見(jiàn)性選擇器::visible
選擇器:
$("E:visible") //E是指元素標(biāo)簽,選擇指定的可見(jiàn)元素標(biāo)簽
或者
$(":visible")//選擇所有可見(jiàn)元素
描述:
“E:visible”表示選擇可見(jiàn)的E元素,比如說(shuō)“$("div:visible")”表示選擇所有可見(jiàn)的div元素,而“$(":visible")”表示選擇所有可見(jiàn)元素
返回值:
集合元素
實(shí)例:
<script type="text/javascript">
$(document).ready(function(){
$("div:visible").click(function(e){ //可見(jiàn)DIV元素綁定一個(gè)單擊事件
$(this).css("border","2px solid red"); //給可見(jiàn)的DIV元素增加一個(gè)2px的紅色邊框
e.stopPropagation();//停止事件冒泡
});
$("button").click(function(e){ //給button綁定一個(gè)單擊事件
$("div:hidden").show("fast").css("background","red");//隱然的元素顯示出來(lái),并把背景變成紅色
e.stopPropagation();//停止事件冒泡
});
});
</script>
功能:
上面第一段代碼是鼠標(biāo)單擊可見(jiàn)的DIV元素后,該元素會(huì)增加一個(gè)2px紅色邊框的樣式,而第二段代碼是單擊按鈕會(huì)顯示所有隱藏的元素,并加上紅色背景色。這里所指的可見(jiàn)元素和我們前面隱藏元素一樣,只是沒(méi)有被“display:none”或“.hide()”隱藏的元素。
效果:

最后再說(shuō)一點(diǎn):“:visible”過(guò)濾出所有可見(jiàn)元素,但是這里的可見(jiàn)是指沒(méi)有被“display:none”或者使用“.hide()“函數(shù)隱藏的元素;”:hidden“是選擇所有隱藏元素。同樣,這里所謂隱藏,不是指”visibility:hidden“,而是指”display:none“或”type="hidden"“的form元素。
有關(guān)于jQuery的可見(jiàn)性過(guò)濾選擇器就簡(jiǎn)單介紹到這里了,感興趣的朋友可以在本地測(cè)試一下,這樣可能加強(qiáng)對(duì)他們的理解。
- 簡(jiǎn)單講解jQuery中的子元素過(guò)濾選擇器
- jquery子元素過(guò)濾選擇器使用示例
- jQuery子屬性過(guò)濾選擇器用法分析
- jQuery子元素過(guò)濾選擇器用法示例
- jQuery選擇器之子元素過(guò)濾選擇器
- jQuery內(nèi)容過(guò)濾選擇器與子元素過(guò)濾選擇器用法實(shí)例分析
- jquery可見(jiàn)性過(guò)濾選擇器使用示例
- jQuery Selectors(選擇器)的使用(四-五、內(nèi)容篇&可見(jiàn)性篇)
- jQuery可見(jiàn)性過(guò)濾選擇器用法示例
- jQuery子選擇器與可見(jiàn)性選擇器實(shí)例分析
相關(guān)文章
jQuery Validate表單驗(yàn)證插件 添加class屬性形式的校驗(yàn)
這篇文章主要介紹了jQuery Validate表單驗(yàn)證插件,在class屬性中添加校驗(yàn)規(guī)則進(jìn)行簡(jiǎn)單的校驗(yàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-01-01
jQuery內(nèi)容選擇器與表單選擇器實(shí)例分析
這篇文章主要介紹了jQuery內(nèi)容選擇器與表單選擇器,結(jié)合實(shí)例形式分析了jQuery內(nèi)容選擇器與表單選擇器的功能、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-06-06
文本框只能選擇數(shù)據(jù)到文本框禁止手動(dòng)輸入
文本框只能上人家選擇數(shù)據(jù)進(jìn)去,不能手動(dòng)輸入,經(jīng)搜索研究發(fā)現(xiàn)個(gè)不錯(cuò)的解決方法,感興趣的朋友可以參考下2013-11-11
利用jQuery對(duì)無(wú)序列表排序的簡(jiǎn)單方法
下面小編就為大家?guī)?lái)一篇利用jQuery對(duì)無(wú)序列表排序的簡(jiǎn)單方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-10-10
Jquery實(shí)現(xiàn)$.fn.extend和$.extend函數(shù)
這篇文章主要介紹了Jquery實(shí)現(xiàn)$.fn.extend和$.extend函數(shù)的相關(guān)資料,需要的朋友可以參考下2016-04-04
Tab切換組件(選項(xiàng)卡功能)實(shí)例代碼
這篇文章主要介紹了一個(gè)簡(jiǎn)單的Tab切換組件實(shí)例,大家可以參考使用2013-11-11
IE10中flexigrid無(wú)法顯示數(shù)據(jù)的解決方法
這篇文章主要介紹了IE10中flexigrid無(wú)法顯示數(shù)據(jù)的解決方法的相關(guān)資料,需要的朋友可以參考下2015-07-07
jQuery插件fullPage.js實(shí)現(xiàn)全屏滾動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了jQuery全屏滾動(dòng)插件fullPage.js的使用方法,可制作全屏滾動(dòng)網(wǎng)頁(yè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12
jquery獲取table中的某行全部td的內(nèi)容方法
jquery獲取table中的某行全部td的內(nèi)容方法,需要的朋友可以參考一下2013-03-03
JQuery+Ajax無(wú)刷新分頁(yè)的實(shí)例代碼
本篇文章主要是對(duì)JQuery+Ajax無(wú)刷新分頁(yè)的實(shí)例代碼進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02

