用jQuery检查某个元素在网页上是否存在时,应该根据获取元素的长度来判断,代码如下:
/**
* @param
* @author 编程之家 jb51.cc jb51.cc
**/
if($("#tt").length > 0) {
//元素存在时执行的代码
}
具体原因如下:
在JavaScript中,我们在使用传统的getElementById()和getElementsByTagName()时,如果在网页中找不到相关元素,那么浏览器就会报错,影响后续代码的执行,所以为了避免浏览器报错,可以对元素进行判断,例如:
if(document.getElementById("tt")) {//js判断元素是否存在
document.getElementById("tt").style.color = "red";
}
如果要操作的元素很多,就需要大量重复的工作,这往往让人厌倦。而jQuery的一大优势就是它完善的处理机制,即使用jQuery获取网页中不存在的元素也不会报错。这是因为$(#tt)获取的永远是对象,即使网页上没有此元素。因此当要用jQuery检查某个元素在网页上是否存在时,不能使用以下代码:
if($("#tt")) {
//永远执行,不管元素是否存在
}
这就是为什么要根据元素的长度来判断元素在页面中是否存在的原因。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。