检查html元素是不是存在的正确方法[重复]

Posted

技术标签:

【中文标题】检查html元素是不是存在的正确方法[重复]【英文标题】:The right way to check if an html element exist [duplicate]检查html元素是否存在的正确方法[重复] 【发布时间】:2019-02-26 04:24:02 【问题描述】:

检查网页中是否存在html元素的正确方法是什么。

我喜欢这样:

    if (document.getElementById('container') !== null) doThis()

这有多好? 还有哪些方法?

【问题讨论】:

嗯,这不是检查元素....这是检查是否定义了 getElementById....我假设您打算这样做 if (document.getElementById("id") !== null) 这基本上是查找元素的方法存在与否.... 无论如何,您都需要引用该元素.... 是的,我忘了括号..(固定) 答案是,基本上你就是这样做的......你可以做真实的检查,但它基本上是一样的...... 它应该直接使用 - if (document.getElementById('id')) 这很好,但我只是好奇是否有其他方法? 【参考方案1】:

已回答

我在找

document.body.contains(element))

【讨论】:

所以猜测你的问题并不完全是你所问的,如果这是你的答案...... 我只是想另辟蹊径。 但是该代码仍然要求您查找如果您使用 getElementById 仍然为空的元素....所以您将执行contains(null) 这并不比if(elem) 好.现在,如果您有一个尚未添加到 DOM 并且不会添加的元素引用,它将如何与 contains 一起工作。 var div = document.createElement("div"); console.log(document.body.contains(div));

以上是关于检查html元素是不是存在的正确方法[重复]的主要内容,如果未能解决你的问题,请参考以下文章

检查Bash数组中是不是存在元素[重复]

检查是不是存在具有相同类的多个元素[重复]

检查元素是不是是javascript中的对象[重复]

确定是不是使用 jQuery 检查复选框 [重复]

检查元素是不是存在[重复]

在追加到 JQuery 之前检查 DOM 元素是不是自动存在