回答(1)
wustguangh 19级 2014-09-09 21:54:08
在使用JS进行前端开发是,经常需要根据ID判断某个DOM元素是否存在,使用原生态的JS判断页面中指定ID的某个DOM元素是否存在的方法如下:
obj = document.getElementById("someID"); if (obj){ obj.innerText("hi"); }
然而,使用JQuery则不一样,如果直接使用下面的方法:
if ($("#someID")){ $("#someID").text("hi"); }
你会发现无效,因为jQuery对象永远都有返回值,所以$("someID") 总是TRUE ,IF语句没有起到任何判断作用。正确的写法应该是:
if ( $("#someID").length > 0 ) { $("#someID").text("hi"); }
补充说明:判断某个页面元素存在与否在jQuery实际上是没有必要的,jQuery本身会忽略 对一个不存在的元素进行操作,并且不会报错。