我知道你可以检查一个元素是否存在$('div').length
,但是当一个元素被销毁时.remove()
,.length
仍然会报告div存在.我怎样才能发现它是否真的存在?
if ($('div').length) {
alert('yes')
} else {
alert('no')
}
Run Code Online (Sandbox Code Playgroud)
测试它是否有父母:
if ($element.parent().length) { alert('yes') }
else { alert('no') }
Run Code Online (Sandbox Code Playgroud)
或者如果您有对DOM元素的引用:
if(element.parentNode) {
// yes
}
Run Code Online (Sandbox Code Playgroud)
显然,这仅适用于您已经引用的元素.
FWIW,元素本身仍然存在,它不是DOM树的一部分.
存在,你的意思是你想看看它是否存在于dom中?检查"html"是否是祖先:
var $myDiv = $(".myDiv");
$myDiv.closest("html").length; // returns 1
$myDiv.remove();
$myDiv.closest("html").length; // returns 0
Run Code Online (Sandbox Code Playgroud)
或者使用.is("html *")
.它返回一个布尔值,这很方便:
var $myDiv = $(".myDiv");
$myDiv.is("html *"); // returns true
$myDiv.remove();
$myDiv.is("html *"); // returns false
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19277 次 |
最近记录: |