`
fangbubu
  • 浏览: 42814 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

为IE添加indexOf的方法

阅读更多

FF中可以正常使用JS的indexOf方法,但是IE中没有这个方法:

 

//为IE添加indexOf的方法
if (!Array.prototype.indexOf) Array.prototype.indexOf = function(item, i) {
i || (i = 0);
var length = this.length;
if (i < 0) i = length + i;
for (; i < length; i++)
if (this[i] === item) return i;
return -1;
};

分享到:
评论

相关推荐

    终于解决了IE8不支持数组的indexOf方法

    在提供的代码片段中,就是这样一个polyfill,它检查`Array.prototype.indexOf`是否存在,如果不存在,就为`Array.prototype`添加一个`indexOf`方法。这段代码首先检查`!Array.prototype.indexOf`,如果表达式结果为...

    对象不支持indexOf属性或方法的解决方法(必看)

    这段代码会在`indexOf`不存在时添加一个自定义的`indexOf`方法到`Array.prototype`上,从而实现对老版本IE的支持。 总之,当遇到"对象不支持indexOf属性或方法"的问题时,可以通过使用jQuery的`$.inArray`,或者...

    JavaScript 不支持 indexof 该如何解决

    该polyfill通过扩展Array.prototype来添加indexOf方法,这样即使在不支持该方法的浏览器中,也可以调用indexOf()进行元素搜索。 具体的polyfill代码如下: ```javascript if (!Array.prototype.indexOf) { Array....

    为JS扩展Array.prototype.indexOf引发的问题及解决办法

    为了解决这个问题,开发者通常会选择扩展Array原型(prototype),添加indexOf方法。Array.prototype是所有数组对象的原型对象,向这个原型对象添加方法,所有数组实例都会继承这个新方法。这样,我们就可以很方便地...

    IE11兼容性问题完美解决(用户代理字符串)

    同时,使用Babel等工具将ES6+语法转换为广泛支持的ES5语法,也能有效避免兼容性问题。 5. **使用polyfill服务**:对于某些新的API或函数,如果老版本浏览器不支持,可以引入polyfill服务,如`core-js`,来模拟这些...

    IE浏览器检测的方法.docx

    例如,可以检查字符串中是否包含"Microsoft Internet Explorer"来判断是否为IE浏览器,或者通过查找"msie 6.0"、"msie 7.0"等来确定具体版本。示例代码如下: ```javascript function isIE() { return navigator....

    实现ie6的png图片透明的2种方法

    ### 实现IE6中的PNG图片透明的两种方法 ...if (navigator.userAgent.indexOf("MSIE") &gt; -1) { window.attachEvent("onload", correctPNG); } ``` 在HTML头部,添加如下代码以引入并执行上述脚本: ```html ...

    JavaScript从数组的indexOf()深入之Object的Property机制

    本文主要介绍了JavaScript中数组的`indexOf()`方法以及对象属性(Property)机制的相关知识,重点探讨了如何在不支持`indexOf()`方法的老旧浏览器中实现该功能,以及如何使用`call`和`apply`方法来复用数组的方法,...

    IE6下使用hover的方法附代码

    if (elements[i].className.indexOf('hover') &gt; -1) { elements[i].onmouseover = function() { this.className += ' hovered'; }; elements[i].onmouseout = function() { this.className = this.className....

    解决遍历时Array.indexOf产生的性能问题

    在一些JavaScript框架中,例如Extjs,为数组添加了indexOf方法,提供了类似功能。但即使在Extjs中,indexOf的实现仍然是线性的,这意味着在大数据集上使用它仍然会引起性能问题。 考虑到性能问题,可以通过实现一个...

    IE8兼容性和判断IE浏览器版本

    再者,IE8中Array没有indexOf()方法,解决办法是使用循环遍历数组或使用underscore.js库。 另外,IE8中delete关键词不能用,解决办法是使用传统的DOM方法删除元素。 再次,IE8中webuploader的.refresh()方法不支持...

    完美解决kindeditor IE11看不到弹出框,兼容性问题

    因此,原有的`_ua.indexOf('msie') &gt; -1`条件在IE11下返回false,导致后续代码处理逻辑出现错误。 在KindEditor的`_getScrollPos`函数中,用于获取页面滚动位置的部分代码如下: ```javascript function _...

    ie兼容问题

    if (images[i].className.indexOf("transparent") != -1) { images[i].style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + images[i].src + "', sizingMethod='scale')"; } } } ``` ...

    检查浏览器IE6提示升级

    if (userAgent.indexOf("MSIE 6.0") &gt; -1) { // 创建并添加升级提示的HTML代码 var divUpgrade = document.createElement('div'); divUpgrade.innerHTML = '您的浏览器版本过旧,建议升级到最新版本!'; ...

    ie6中png透明解决方案 js

    if (el.style.filter.indexOf('Alpha') === -1) { // 如果尚未应用Alpha滤镜 el.style.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + el.src + '", sizingMethod="scale")'; // 应用...

    js ie非ie浏览器的几种判断方法小结

    这个方法基于IE浏览器支持`window.attachEvent`来添加事件监听器,而非IE浏览器通常使用`window.addEventListener`。如果`window.attachEvent`存在并且可调用,那么我们可以说当前浏览器是IE。 另一种方法来自...

    基于bootstrap-datetimepicker.js不支持IE8的快速解决方法

    首先,我们需要理解IE8不支持的一些现代JavaScript特性,例如`Array.prototype.indexOf()`方法。这个方法用于在一个数组中查找指定元素的索引,如果找不到则返回-1。在IE8及更早版本中,这个方法是缺失的,因此我们...

Global site tag (gtag.js) - Google Analytics