gpt4 book ai didi

javascript - Internet Explorer 11 中的 SCRIPT438 错误

转载 作者:可可西里 更新时间:2023-11-01 02:14:38 24 4
gpt4 key购买 nike

我最近一直在使用 JavaScript,一切都很好,直到我在 IE11 中打开我的页面。根据 Mozilla website .forEach 受 IE9 支持。

这是我得到的错误。

SCRIPT438: Object doesn't support property or method 'forEach'

这是代码。

var link1 = document.querySelectorAll("nav a");
var textbox = document.getElementById("OutputWindow");
link1.forEach(function (element) {
textbox.innerHTML += "<br/>" + element + "\n";
element.onclick = function () {
alert("Hello!");
console.log("hello!");
confirm("Hello!");
};
});

我尝试了 polyfill,但让我觉得有趣的是,ArrayIE11 中有一个 forEach

那我哪里出错了?

PS:这在 Chrome 中运行良好。

最佳答案

终于解开了谜团。

显然,IE9 及更高版本支持 Array.forEach 但不支持 NodeListquerySelector 返回。我尝试了 Array.from() 无济于事,因为它需要 ES6 或使用 ES6-shim

我所要做的就是将 nodeList 转换为 Array,我做到了。

Array.prototype.slice.call(document.querySelectorAll("nav a"), 0);

出现在问题中 In Javascript, what is the best way to convert a NodeList to an array

关于javascript - Internet Explorer 11 中的 SCRIPT438 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41321515/

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