2010-04-27 61 views
-1

我不能工作了这架是在错误的地方,并在那里和现在即时通讯完全丧失:哪些错误使用此功能

$("#slid").click(function() { 
     $("#div1").animate({ top: "25px",}, 300 
     },function() { 
      $("#div1").animate({ top: "85px",}, 300 
     }); 
    }); 

谁能帮助?

回答

3

这一部分:

},function() { 

应该仅仅是:

,function() { 

callback是第三PARAM,所以不需要额外的大括号,在那里悄悄。您传递给动画的对象中的尾随逗号在IE中也可能存在问题,因此请更改以下内容:
{ top: "25px",}{ top: "25px"}要安全。

请注意,将代码插入类似jsbeautifier.org(或任何其他格式化程序)是快速查找支撑错误的方法,因为它们混淆了格式化引擎并使其无法使用......使其更容易点。

+0

感谢您的提示! – CLiown 2010-04-27 12:47:18

+0

+1。这是对的。查看我的复制和粘贴代码的答案。 – 2010-04-27 12:51:41

0

这应做到:

$("#slid").click(function() { 
    $("#div1").animate({top: "25px"}, 300, function() { 
      $("#div1").animate({top: "85px"}, 300); 
    }); 
}); 

注意,除了什么尼克说,你在你的内心animate方法的末尾缺少)

0

在25px和85px之后删除逗号(IE中的尾随逗号失败)。
固定括号。
引用顶部(我的个人偏好)。
使用$(this)而不是在动画回调函数中再次查找元素。

$("#slid").click(function() { 
    $("#div1").animate({"top":"25px"},300,function() { 
     $(this).animate({"top":"85px"},300); 
    }); 
});