使用jquery动画时的Erorr“行内存不足:13”

我试图用以下代码显示我的产品动画(jquery)

var prodNum = ; var i = 1; $.timer(5000, function(timer) { $(".prods").hide("slide", { direction: "down" }, 500, function() { $(".prods").html("
" + $("#pr" + ((4*i) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 1) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 2) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 3) % prodNum)).html() + "
"); $(".prods").show("slide", { direction: "down" }, 500); i++; }); });

它与firefox工作正常,但在IE中我得到“行内存不足:13”我该如何解决这个问题? 我使用的是1.4.2版

谢谢

发现了问题。

它是jQuery和jQuery.ui版本之间的可计算性

谢谢

在方法内部而不是在方法中使用$(".prods") ,使用$(this) ,如下所示:

 var prodNum = <%=prodNum %>; var i = 1; $.timer(5000, function(timer) { $(".prods").hide("slide", { direction: "down" }, 500, function() { $(this).html("
" + $("#pr" + ((4*i) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 1) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 2) % prodNum)).html() + "
" + "
" + $("#pr" + ((4*i + 3) % prodNum)).html() + "
") .show("slide", { direction: "down" }, 500); i++; }); });

当你使用$(".prods")它会相互依赖地动画每个元素(并且n元素的时间,因为每个.hide()完成所有其他新的.prod元素的排队,它会以指数方式复合动画)。 随着所有幻灯片动画彼此之间以及每个元素的排队,IE将不会对这一多个动画立刻感到满意。