在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在。原因是对一个不存在的元素进行操作是不允许的。例如:

document.getElementById("someID").innerText("hi");

如果ID为"someID"的元素不存在,我们将得到Javascript运行错误:document.getElementById("someID") is null

正确的写法应该是:

obj = document.getElementById("someID");
if (obj){
  obj.innerText("hi");
}

那么在jQuery,我们如何判断页面元素存在与否呢?如果参照上面的传统Javascript的写法,我们第一个想到的办法一定是:

if ($("#someID")){
  $("#someID").text("hi");
}

可是这么写是不对的!因为jQuery对象永远都有返回值,所以$("someID")总是TRUE,IF语句没有起到任何判断作用。正确的写法应该是:

if ( $("#someID").length > 0 ) {
$("#someID").text("hi");
}

注意:判断某个页面元素存在与否在jQuery实际上是没有必要的,jQuery本身会忽略对一个不存在的元素进行操作,并且不会报错。

来自:http://www.cnblogs.com/Capricornus/archive/2010/02/10/1667091.html

jQuery基础 -- 如何判断页面元素存在与否相关推荐

  1. 判断页面元素存在与否

    在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的.例如: document.getElementById(&q ...

  2. php开发是可视的吗,javascript,html_Jquery判断页面元素是否在浏览器的可视区域内,javascript,html,css,html5 - phpStudy...

    Jquery判断页面元素是否在浏览器的可视区域内 前端开发中,有时需要判断某个元素是否在浏览器的可视区域内,或者是否已经滚动出了可视区域.首先想到的便是javascript操作,原生方法自然可以,不过 ...

  3. jQuery如何去判断页面是否有父页面?

    jQuery如何去判断页面是否有父页面?   是要判断当前页面是否被嵌入在frame里吗? 1 2 3 if (top != self) {     alert('我在框架里'); } 转载于:htt ...

  4. js中加载指定的html代码,在js或JQuery中怎样判断页面html代码中含有指定名称的div元素...

    在我们制作网页的过程中,想要在某个页面中的某一元素中添加新的内容,而不想改动那个页面,我们一般会直接在全局的jsz中直接加入document.getElementById("指定id&quo ...

  5. selenium web自动化判断页面元素加载完毕

    主要方便以后用到时查阅,侵删! 三种等待方法: 1.强制等待sleep(xx) 强制等待,不管你浏览器是否加载完了,程序都得等待,时间一到,继续执行下面的代码,作为调试很有用,有时候也可以在代码里这样 ...

  6. 用 jQuery 获取 iframe 父子页面元素

    在iframe子页面获取父页面元素 代码如下: $('#Id', parent.document); 在父页面 获取iframe子页面的元素 代码如下: $("#Id",windo ...

  7. js/jquery获取不到页面元素 需要点击一下才能找到

    2018-03-23 更新 更新内容:检查在获取的时候是不是使用class获取元素,如果是则修改为通过id获取元素.通过id获取元素是可以直接获取到的 以下为原文 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ...

  8. js判断页面元素是否隐藏

    代码: var display =$('#id').css('display'); if(display == 'none'){alert("我是隐藏元素!"); } 注意:需要引 ...

  9. isvisible java_.NET(C#) Selenium操作调用浏览器判断页面元素(ElementIsVisible)可见的方法...

    1、使用Until和匿名函数的方法var wait = new WebDriverWait(driver, new TimeSpan(0, 0, 30)); wait.IgnoreExceptionT ...

最新文章

  1. Neurala与CSDN宣布战略合作,将一站式AI平台BrainBuilder带给中国开发者
  2. 超越ImageNet?李飞飞力赞高徒的视频描述研究入选计算机视觉最前沿的十大论文
  3. 都2021年了,你还在用Jenkins?赶快看看这些替代方案吧!
  4. 开发工具之Android Studio快捷键
  5. ibatis example Class 使用
  6. 一口气拿了9家公司的offer,年薪50W
  7. html向左箭头样式,详解Bootstrap的纯CSS3箭头按钮样式
  8. Python这些操作,逆天且实用!
  9. zigbee物联网模块标准:LTE标准Cat.1和nbiot无线通信模块差异
  10. mailto发送邮件
  11. php 邮箱重置密码错误,discuz邮箱重置密码参数失败的解决方法
  12. 虚拟服务器dhcp,虚拟服务器上配置dhcp服务器
  13. 计算机考级各省份难度,2018年全国各省份高考难度排名,基于高分率最新统计数据!...
  14. php原生数据库分页
  15. mysql执行sql流程_mysql 执行sql流程
  16. “最强大脑”蒋昌建站台,原来是为这群白帽黑客和少年极客
  17. TCP基于窗口的端到端的拥塞控制机制
  18. php程序员 一万小时定律,科学网—一万小时定律——阅读笔记 - 贾琳的博文
  19. linux命令之 whatis
  20. PHPcmsv9采集免规则PHPcmsv9采集

热门文章

  1. Redis(二)冰叔带你了解Redis-哨兵模式和高可用集群解析
  2. 西门子医疗创新产品和解决方案亮相第83届中国国际医疗器械博览会
  3. python 3.6.6安装fake_Python3 fake_useragent 模块的使用和报错解决方案
  4. 扫地机器人遇见台阶_我就想告诉你 米家扫地机器人在真实环境下的表现
  5. 支付宝沙箱环境-Demo支付案例
  6. sql注入--布尔盲注
  7. java计算机毕业设计防疫期社区人员信息动态管理系统源码+系统+lw+数据库+调试运行
  8. IE浏览器上传文件报错:org.apache.tomcat.util.http.fileupload.FileUploadException: Stream ended unexpectedly
  9. Scala语言学习开发工具(一)
  10. bootstrap响应式框架