[英]jquery's every() doesn't work on Internet Explorer
.every()
是对Array原型的JavaScript 1.6增强。 Firefox在Gecko 1.8b2及更高版本中支持此方法,如果它不存在,这里是一个快速替换。
来自MDC:
every
都是ECMA-262标准的最新成员; 因此,它可能不会出现在所有浏览器中。 您可以通过在脚本开头插入以下代码来解决此问题,从而允许使用本身不支持它的每个实现。 该算法与Firefox和SpiderMonkey中使用的算法完全相同。
if (!Array.prototype.every)
{
Array.prototype.every = function(fun /*, thisp*/)
{
var len = this.length >>> 0;
if (typeof fun != "function")
throw new TypeError();
var thisp = arguments[1];
for (var i = 0; i < len; i++)
{
if (i in this &&
!fun.call(thisp, this[i], i, this))
return false;
}
return true;
};
}
jQuery中没有定义every
方法。 您可以使用每个 :
$.each(data, function(index, task) {
createCardFromTask(task);
});
或者更短一些:
$.each(data, function() {
createCardFromTask(this);
});
当我尝试循环选择DOM元素时,我最近遇到了与.each函数相同的问题。 事实证明问题不在于Javascript。 这是HTML,我们正在使用的特殊标签。 IE6不支持ABBR。
我建议你先检查所有标签,确保IE6支持所有标签。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.