Javascript IE8中的jQuery.animate({left:0})错误

Javascript IE8中的jQuery.animate({left:0})错误,javascript,jquery,internet-explorer,internet-explorer-8,jquery-animate,Javascript,Jquery,Internet Explorer,Internet Explorer 8,Jquery Animate,在IE8中,行$liElement.animate{left:0},500;使用不支持此属性或方法的对象断开页面错误$liElement是我从$'MyDivLi'获取的jQuery对象。eq0 $liElement.animate{},500;不会导致错误 我使用的是jQuery1.5.1。如何解决此问题?将呼叫包装在try-catch中: try { // animate } catch (e) { // handle error } 用try-catch包装呼叫: tr

在IE8中,行$liElement.animate{left:0},500;使用不支持此属性或方法的对象断开页面错误$liElement是我从$'MyDivLi'获取的jQuery对象。eq0

$liElement.animate{},500;不会导致错误


我使用的是jQuery1.5.1。如何解决此问题?

将呼叫包装在try-catch中:

try {
    // animate  
} catch (e) {
    // handle error
}

用try-catch包装呼叫:

try {
    // animate  
} catch (e) {
    // handle error
}


要找到这个问题的根源,您必须在调试器下运行这段代码,并找出1它抱怨的对象2它抱怨的属性或方法。然后,您可以反向工作以查看谁的假设不正确。也许您可以发布一个具有最小测试用例的?要找到它的源代码,您必须在调试器下运行此代码,并找出1它抱怨的对象2它抱怨的属性或方法。然后,您可以反向工作以查看谁的假设不正确。也许您可以发布一个具有最小测试用例的元素?

您需要使元素处于绝对位置或相对位置。否则将忽略left的值。

您需要使元素处于绝对位置或相对位置。否则,左侧的值将被忽略。

它对其他非零值有效吗?@Diodeus,否-它对任何值都无效。右元素也不是绝对定位的吗?@Frederic Hamidi,不是,但它嵌套在绝对定位的div中。它对其他非零值有效吗?@Diodeus,不是-它对任何值都无效。你的元素是否绝对定位?@Frederic Hamidi,不是,但它嵌套在绝对定位的div中:空的catch块是邪恶的。除非@Chris打算在catch块中放置一些东西,如console.loge或debugger语句…@Dan D,你可能是对的,如果@Chris这样做,我肯定会取消否决票。但是用试一试的方式来总结这个问题并不会给我带来太多希望。@Frederic,我应该知道发布问题的人在失败时想做什么吗?这根本不是问题。@Frederic,我说的是试抓。我不是在写代码。问题也没有说明应该如何处理错误。但这确实解决了这个问题。如果你知道的更好,为什么不告诉我们:空的catch块是邪恶的。除非@Chris打算在catch块中放置一些东西,比如console.loge或debugger语句…@dand,你可能是对的,如果@Chris这样做,我肯定会取消否决票。但是用试一试的方式来总结这个问题并不会给我带来太多希望。@Frederic,我应该知道发布问题的人在失败时想做什么吗?这根本不是问题。@Frederic,我说的是试抓。我不是在写代码。问题也没有说明应该如何处理错误。但这确实解决了这个问题。如果你知道得更清楚,为什么不告诉我们呢。我试着在调用的前面加上$liElement.css'position'、'relative'和liElement.css'position'、'absolute'两个前缀。两者都没有修复这个错误。我尝试在调用的前面加上$liElement.css'position'、'relative'和liElement.css'position'、'absolute'前缀。两人都没有纠正错误