gpt4 book ai didi

javascript - IE8中对DOM对象有特殊的处理吗?

转载 作者:行者123 更新时间:2023-11-28 13:55:57 24 4
gpt4 key购买 nike

我声明了这个函数:

Object.prototype.append = Array.prototype.append = append = function( tag ){
alert( this )
...
}

它应该在 DOM 元素或对象数组之后附加“tag”元素。现在,当我在两个元素的数组之后调用它时 - 一切正常,我通过 alert 得到“[object HTMLDivElement,object HTMLDivElement]” thtown for,但是当它由单个 DOM 元素 IE8 调用时抛出该对象不支持此选项或方法,甚至警报也没有执行。

最佳答案

DOM 元素不一定继承自 Javascript Object。你不能指望这一点。它可能在某些地方有效,但正如您所遇到的,它并非在所有地方都有效。

您可以在创建现有 DOM 对象后向其添加方法,但这有时会导致问题。像原型(prototype)这样用于扩展内置对象的库正在远离这种行为,而像 jQuery 和 YUI 这样的库则完全避免了这种行为。

我建议您最好使用实用函数,而不是像 jQuery 那样使用附加 DOM 方法或包装对象。

关于javascript - IE8中对DOM对象有特殊的处理吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7910839/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com