只是一个小谜题,为什么会......
$( document ).ready( function(){
if ($("body").find( ".bogusCrap" )) {
alert("FOUND bogusCrap");
}
})
...返回 true?
以下检查按预期工作:
$(".bogusCrap").length > 0
按预期工作
最佳答案
$("body").find( ".bogusCrap")
返回一个空的类数组对象。对象,即使是空的,也不是假值,它们是真值。简单来说,这意味着空对象(或空数组)等于 true
。
你可以自己尝试一下:
if ( [] )
alert("True");
if ( {} )
alert("True");
正如 Felix Kling 在下面的评论中指出的,$("body").find( ".bogusCrap")
实际上返回一个 jQuery object ,但是我上面所说的仍然适用。
关于jquery - 为什么 jquery $().find() 返回误报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26219511/