我在以下代码中的持续时间参数中设置的设置失败了我(50,1000,4000)。无论我设定的持续时间值,它都以一个看起来是半秒的速度运行。以下是现场演示的链接 - http://dekke.net/easing/easing.html。以下是相关代码:
$(function() {
$("#animate").click(function() {
$("#one").animate({ left: "500px" }, { duration: "50", easing: "linear"}, 0);
$("#two").delay(500).animate({ left: "500px" }, { duration: "1000", easing: "linear"} );
$("#three").delay(1000).animate({ left: "500px" }, { duration: "4000", easing: "linear"} );
});
非常感谢任何帮助。
答案 0 :(得分:3)
而不是字符串:
duration:"1000"
传递一个数字:
duration:1000
编辑:更多信息。
这是分析duration
的地方。 https://github.com/jquery/jquery/blob/1.5/src/effects.js#L283-284
基本上 -
jQuery.fx.speeds
的属性(“慢”,“快”)_default
jQuery.fx.speeds
属性
我认为如果jQuery尝试parseInt()
,如果它不是数字,以防万一有人确实传递了一个数字字符串,那将会很有用。然后,如果返回NaN
,请尝试jQuery.fx.speeds
。