jQuery 檢查某個(gè)元素在頁(yè)面上是否存在實(shí)例代碼
最近做項(xiàng)目,有這么個(gè)功能用jQuery檢查某個(gè)元素在網(wǎng)頁(yè)上是否存在,這里記錄下,也許能幫助正在讀文章的朋友。
用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è)面中是否存在的原因。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
瘋狂Jquery第一天(Jquery學(xué)習(xí)筆記)
之前一直學(xué)習(xí),現(xiàn)在終于有時(shí)間來(lái)整理一下文檔了。以下文章都是自己學(xué)習(xí)Jquery 的筆記,希望能留下痕跡,也希望能幫助到您2012-05-05
基于jQuery Tipso插件實(shí)現(xiàn)消息提示框特效
這篇文章主要介紹了基于jQuery Tipso插件實(shí)現(xiàn)消息提示框特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-03-03
jQuery實(shí)現(xiàn)圖片放大預(yù)覽實(shí)現(xiàn)原理及代碼
jQuery實(shí)現(xiàn)圖片放大原理很簡(jiǎn)單,就是將圖片顯示的尺寸變大后放在瀏覽器的一個(gè)指定位置,從而實(shí)現(xiàn)圖片的放大預(yù)覽,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-09-09
jquery利用event.which方法獲取鍵盤(pán)輸入值的代碼
jquery利用event.which方法獲取鍵盤(pán)輸入值的代碼,需要的朋友可以參考下。2011-10-10

