当前位置:  开发笔记 > 编程语言 > 正文

对于IE中的每个JavaScript支持?

如何解决《对于IE中的每个JavaScript支持?》经验,为你挑选了3个好方法。

我有这个代码:



Select All
DG1 DG2 DG3 DG4 DG5

如何使上述脚本在IE中工作?



1> Matthew Crum..:

请注意,Firefox不再支持每个循环,因此这适用于每个浏览器,而不仅仅是Internet Explorer.有关替代方案,请参阅此MDN文章.


Internet Explorer不支持"for each"循环(以及其他现代浏览器,它们已经不再支持它们).您需要更改代码以使用常规for循环:

function toggle(source) {
    var checkboxes = document.getElementsByName('DG1');
    for (var i = 0; i < checkboxes.length; i++) {
        checkboxes[i].checked = source.checked;
    }
    ...
}

或者,您可以使用像jQuery这样的库,并按照以下方式执行:

function toggle(source) {
    $("input[name^=DG]").attr("checked", source.checked);
}


回到那一天,您只需要在多个体系结构中兼容*source*.现在你必须在几个浏览器架构中兼容"二进制",加上一堆松散分散的砖块,下面有一个死獾,尖叫着怜悯.

2> 小智..:

或者您可以尝试为不支持foreach方法的浏览器扩展Array对象,如下所示:https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference : Objects :Array: forEach#Compatibility



3> Rohit Dubey..:

我认为jQuery.each是最好的解决方案

var idArr = ["LocationFirst","LocationSecond","LocationThird","LocationFourth","LocationFifth"];

 $.each(idArr,function(index, entry) {
   //some code
 });

它将迭代数组"idArr"中的所有元素,并可以对每个元素做一些事情.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有