gpt4 book ai didi

javascript - 无法通过简单的 JavaScript 原型(prototype)方法

转载 作者:行者123 更新时间:2023-11-30 18:50:16 26 4
gpt4 key购买 nike

我写了一些 JavaScript 代码。它以这种方式向 NodeList 类型添加新功能:

NodeList.prototype.forEach = function(func) {
var len = this.length
for(var i=0;i<len;i++) func(this[i])
}

它在其他地方使用:

document.getElementsByTagName("fieldset").forEach(disappearFields)

一切都非常简单。

它在 chrome 中运行良好,但 firefox 给出了一个错误:

document.getElementsByTagName("fieldset").forEach is not a function [Break on this error] document.getElementsByTagName("fieldset").forEach(disappearFields)

disappearFields 是一个短函数:

function disappearFields(what) {
what.style.display = "none"
}

我已经在谷歌中寻找任何帮助,但根据这些信息,我的代码应该可以正常工作。我自己无法应付。任何帮助都将不胜感激。

最佳答案

HTMLCollection.prototype.forEach = function(func) {
var len = this.length
for(var i=0;i<len;i++) func(this[i])
}

FireFox 将 document.getElementsByTagName("fieldset") 识别为 HTMLCollection

https://developer.mozilla.org/en/DOM/HTMLCollection

我认为 Safari 将其识别为 NodeList 而 IE 仅将其识别为对象。

关于javascript - 无法通过简单的 JavaScript 原型(prototype)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4159073/

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