javascript - 确定对象是 <div> 还是窗口

标签 javascript dom

据我所知,可以在 JavaScript 中验证某个对象实际上是一个 div 元素:

if (element.constructor  == HTMLDivElement) {
  //...
}

如何应用类似的检查来查看元素是否为窗口?检查 DOMWindow 不起作用,这样的函数似乎未定义。

最佳答案

DOM 元素的“tagName”属性会告诉您它是哪种 DOM 元素。除了 duck-typing 之外,我不知道有什么好方法可以检查引用是否指向“窗口”实例。

与其检查引用是什么,不如检查对象可以做什么,或者看起来能够做什么。您究竟想通过确定对象的性质来完成什么?

因为 Javascript 对象的可塑性很强,即使你确定一个对象是 <div> DOM 实例不一定会告诉您有关它的所有信息,因为代码可能已将对象的属性更改得面目全非。

关于javascript - 确定对象是 <div> 还是窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4204900/

相关文章:

javascript - 使用 sinon 测试 promise 中的函数

javascript - 如何将 jquery attr 值转换为字符串对象以将其用作正则表达式?

javascript - 使用 jQuery 在重复部分内重复字段

c# - 如何从Xpath中的父节点获取所选节点的位置

javascript - 如何使用 javascript es6 将数组插入到 Spanner 数据库的列中

javascript - 如何检测与JS的碰撞

javascript - 如何在 JavaScript 中将 .txt 文件中的数据保存到数组中?

html - dom/css : inclose multiple 100% container into a container larger then the viewport(100%)

javascript - 将一张 Canvas 放在另一张 Canvas 上方时出现问题

javascript - 无法在表中显示数据库中的所有数据