最簡(jiǎn)單的辦法是判斷元素匹配長(zhǎng)度
10年的肥城網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。網(wǎng)絡(luò)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整肥城建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“肥城網(wǎng)站設(shè)計(jì)”,“肥城網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
譬如HTML代碼:
復(fù)制代碼
代碼如下:div
class='mydiv'/div
通常我們的做法是
復(fù)制代碼
代碼如下:if($('.mydiv').length0)
比較可靠且不會(huì)出錯(cuò)的做法是:
復(fù)制代碼
代碼如下:
if($('.mydiv').length
$('.mydiv').length0)
return
true;
使用傳統(tǒng)javascript方法,如下:
復(fù)制代碼
代碼如下:
if(document.getElementById('div'))
{
//
找到到對(duì)應(yīng)元素
}
else
{
//
沒(méi)有找到找到到對(duì)應(yīng)元素
}
使用jQuery則比較簡(jiǎn)單,只需判斷此元素的長(zhǎng)度是否為0,如果為0則此元素不存在,代碼如下:
復(fù)制代碼
代碼如下:
if
($("#div").length
0){
//
找到對(duì)應(yīng)id=div的元素,然后執(zhí)行此塊代碼
}
甚至能找到組合元素,如下,我們找一個(gè)id定義為div的元素里面是否包含img,代碼如下:
復(fù)制代碼
代碼如下:
if
($("#div
img").length
0){
//
找到對(duì)應(yīng)id=div并且包含img的元素,然后執(zhí)行此塊代碼
}
是不是很簡(jiǎn)單,大家可以嘗試使用一下
用jQuery檢查某個(gè)元素在網(wǎng)頁(yè)上是否存在時(shí),應(yīng)該根據(jù)獲取元素的長(zhǎng)度來(lái)判斷,代碼如下:
if($("#tt").length 0) {
//元素存在時(shí)執(zhí)行的代碼
}
具體原因如下:
在JavaScript中,我們?cè)谑褂脗鹘y(tǒng)的getElementById()和getElementsByTagName()時(shí),如果在網(wǎng)頁(yè)中找不到相
關(guān)元素,那么瀏覽器就會(huì)報(bào)錯(cuò),影響后續(xù)代碼的執(zhí)行,所以為了避免瀏覽器報(bào)錯(cuò),可以對(duì)元素進(jìn)行判斷,例如:
if(document.getElementById("tt")) {//js判斷元素是否存在
document.getElementById("tt").style.color = "red";
}
如果要操作的元素很多,就需要大量重復(fù)的工作,這往往讓人厭倦。而jQuery的一大優(yōu)勢(shì)就是它完善的處理機(jī)制,即使用jQuery獲取網(wǎng)頁(yè)中
不存在的元素也不會(huì)報(bào)錯(cuò)。這是因?yàn)?("#tt")獲取的永遠(yuǎn)是對(duì)象,即使網(wǎng)頁(yè)上沒(méi)有此元素。因此當(dāng)要用jQuery檢查某個(gè)元素在網(wǎng)頁(yè)上是否存在時(shí),不能使用以下代碼:
if($("#tt")) {
//永遠(yuǎn)執(zhí)行,不管元素是否存在
}
這就是為什么要根據(jù)元素的長(zhǎng)度來(lái)判斷元素在頁(yè)面中是否存在的原因。
jquery判斷頁(yè)面中是否存在某元素,有一個(gè)思路是這樣的:
比如:我們要判斷頁(yè)面中是否存在div元素,那么我們可以這樣寫:
script
if($('div').length0) {
alert('頁(yè)面中存在div元素');
} else {
alert('頁(yè)面中不存在div元素');
}
/script
上述代碼思路說(shuō)明 : 判斷某一個(gè)元素的集合的個(gè)數(shù)。若是為0,則代表沒(méi)有這樣元素;若是大于0,則代表有這個(gè)元素。
純手打,望采納。
判斷jQuery 元素是否顯示與隱藏的方法如下:
1、使用CSS屬性
var display =$('#id').css('display');if(display == 'none'){?? alert("被你發(fā)現(xiàn)了,我是隱藏的啦!");}
2、使用jquery內(nèi)置選擇器
假設(shè)我們頁(yè)面有這么個(gè)標(biāo)簽,
div id="test"p僅僅是測(cè)試所用/p/div
那么,我們可以用以下語(yǔ)句來(lái)判斷id為"test"的標(biāo)簽是否隱藏:
if($("#test").is(":hidden")){...} //前提是已經(jīng)將jQuery的庫(kù)導(dǎo)進(jìn)來(lái)了
這樣,我們就能夠很簡(jiǎn)單地判斷一個(gè)元素是否隱藏,并根據(jù)其狀態(tài)來(lái)設(shè)置動(dòng),比如:
if($("#test").is(":hidden")){?????? $("#test").show();??? //如果元素為隱藏,則將它顯現(xiàn)}else{????? $("#test").hide();???? //如果元素為顯現(xiàn),則將其隱藏}
3、jQuery判斷對(duì)象是否顯示或隱藏
Js代碼
// jQuery("#tanchuBg").css("display")??// jQuery("#tanchuBg").is(":visible")??// jQuery("#tanchuBg").is(":hidden")
兩種方法如下:
1、hasClass(‘classname’)
2、is(‘.classname’)
例子:
1、使用is(‘.classname’)的方法
$('div').is('.redColor')
2、使用hasClass(‘classname’)的方法(注意jquery的低版本可能是hasClass(‘.classname’))
$('div').hasClass('redColor')
擴(kuò)展資料:
關(guān)于上述出現(xiàn)的jquery的hasclass()和is()的簡(jiǎn)介
1、is()
is(expr|obj|ele|fn)
根據(jù)選擇器、DOM元素或 jQuery 對(duì)象來(lái)檢測(cè)匹配元素集合,如果其中至少有一個(gè)元素符合這個(gè)給定的表達(dá)式就返回true。
如果沒(méi)有元素符合,或者表達(dá)式無(wú)效,都返回'false'。 '''注意:'''在jQuery 1.3中才對(duì)所有表達(dá)式提供了支持。在先前版本中,如果提供了復(fù)雜的表達(dá)式,比如層級(jí)選擇器(比如 + , ~ 和 ),始終會(huì)返回true
2、hasclass()
檢查當(dāng)前的元素是否含有某個(gè)特定的類,如果有,則返回true。
這其實(shí)就是 is("." + class)。
描述:給包含有某個(gè)類的元素進(jìn)行一個(gè)動(dòng)畫(huà)。
網(wǎng)頁(yè)標(biāo)題:jquery判斷元素,jquery判斷元素類型
文章URL:http://sd-ha.com/article34/phhjpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、面包屑導(dǎo)航、網(wǎng)頁(yè)設(shè)計(jì)公司、微信公眾號(hào)、網(wǎng)站策劃、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)