Chinaunix首页 | 论坛 | 博客
  • 博客访问: 281605
  • 博文数量: 191
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1826
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-19 21:54
文章分类

全部博文(191)

文章存档

2018年(27)

2017年(5)

2016年(53)

2015年(89)

2014年(17)

分类: jQuery

2018-07-20 13:40:44

用jQuery检查某个元素在网页上是否存在时,应该根据获取元素的长度来判断,代码如下:

点击(此处)折叠或打开

  1. if($("#tt").length > 0) {
  2.     //元素存在时执行的代码
  3. }

具体原因如下:

         在JavaScript中,我们在使用传统的getElementById()和getElementsByTagName()时,如果在网页中找不到相关元素,那么浏览器就会报错,影响后续代码的执行,所以为了避免浏览器报错,可以对元素进行判断,例如:

点击(此处)折叠或打开

  1. if(document.getElementById("tt")) {//js判断元素是否存在
  2.     document.getElementById("tt").style.color = "red";
  3. }

如果要操作的元素很多,就需要大量重复的工作,这往往让人厌倦。而jQuery的一大优势就是它完善的处理机制,即使用jQuery获取网页中不存在的元素也不会报错。这是因为$("#tt")获取的永远是对象,即使网页上没有此元素。因此当要用jQuery检查某个元素在网页上是否存在时,不能使用以下代码:

点击(此处)折叠或打开

  1. if($("#tt")) {
  2.     //永远执行,不管元素是否存在
  3. }
这就是为什么要根据元素的长度来判断元素在页面中是否存在的原因。

阅读(53) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册