通过构造函数属性访问DOM元素

时间:2017-07-28 19:41:33

标签: javascript

是否有可能通过JavaScript通过其构造函数(最好是HTMLElement)通过自定义属性或直接访问DOM元素?

类似下面的代码:

/* Some Attribute             
    document.body.someAttribute == document.body
        (this should be true)
*/

HTMLElement.prototype.someAttribute = (function() {
    /* Return the element. */
})();

1 个答案:

答案 0 :(得分:0)

你的问题很不清楚。你的标题是" access",但你提供的第一个例子似乎是"测试"。 document.bodyHTMLBodyElement的一个实例,因此是其构造函数document.body.constructor的值,所以

document.body.constructor === HTMLBodyElement

document.body instanceof HTMLBodyElement

当然也是

document.body instanceof HTMLElement

因为HTMLBodyElementHTMLElement的子类。

你无法从构造函数到实例;没有构造函数知道可能用它创建了什么实例。要查找特定HTML元素类型的实例,请使用document.querySelector[All](tagName)