首页 > web前端 > js教程 > 正文

如何在不使用 getElementById 的情况下高效检查可见 DOM 中元素是否存在?

Linda Hamilton
发布: 2024-10-21 22:27:02
原创
674 人浏览过

How to Efficiently Check Element Existence in the Visible DOM Without Using getElementById?

如何检查可见 DOM 中的元素存在

不使用 getElementById 测试元素存在

当尝试不使用 getElementById 验证元素存在时,它很明显,变量并不维护对 DOM 元素的实时引用,而是保留它们的初始值。在从 DOM 中删除元素后检查元素是否存在时,这可能会导致意外结果。

检查存在性的方法

要解决此问题,请考虑使用 isNull 函数,该函数尝试确定元素的存在:

<code class="javascript">var isNull = function (element) {
  var randomID = getRandomID(12),
    savedID = (element.id) ? element.id : null;
  element.id = randomID;
  var foundElm = document.getElementById(randomID);
  element.removeAttribute('id');
  if (savedID !== null) {
    element.id = savedID;
  }
  return (foundElm) ? false : true;
};</code>
登录后复制

此方法有效,但建议使用更简单的方法。

检查可见 DOM 中的存在

确定元素是否存在于可见 DOM,使用 contains() 方法:

<code class="javascript">document.body.contains(someReferenceToADomElement);</code>
登录后复制

此方法返回一个布尔值,指示该元素是否是 DOM 的一部分。与 isNull 函数相比,它提供了一种更直接、更有效的方法来检查存在性。

以上是如何在不使用 getElementById 的情况下高效检查可见 DOM 中元素是否存在?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!