我刚读过这个question and answer from StackExchange,但解决方案对我不起作用。
这不起作用:
$("#top_slide").slideUp(5000, "easeInOutQuart");
但这确实有效:
$("#top_container").animate({height: headerHeight}, 5000, "easeInOutQuart");
我正在使用最新的jQuery-1.10.2.js。
有什么想法吗?
//
我添加了这样的缓动插件,它可以在jsfiddle:
中使用<script src="js/jquery-1.10.2.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script src="js/jquery.easing.compatibility.js"></script>
<script src="js/jquery.easing.min.js"></script>
脚本代码是这样的:
$("#top_slide").slideUp({ duration: 5000, easing: "easeInOutQuart" });
我仍然会收到此错误:
Uncaught TypeError: Object #<Object> has no method 'easeInOutQuart'
rr.run jquery.js:9216
l jquery.js:8914
x.fx.timer jquery.js:9511
er jquery.js:8981
a jquery.js:9305
x.extend.dequeue jquery.js:3948
(anonymous function) jquery.js:3991
x.extend.each jquery.js:657
x.fn.x.each jquery.js:266
x.fn.extend.queue jquery.js:3984
x.fn.extend.animate jquery.js:9316
x.fn.(anonymous function) jquery.js:9442
(anonymous function) playingWithjQuery.php:38
c jquery.js:3048
p.fireWith jquery.js:3160
x.extend.ready jquery.js:433
q
提前致谢!
//
我把它改成了一个div,这是我的html,这里是error page:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="js/jquery-1.10.2.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script src="js/jquery.easing.compatibility.js"></script>
<script src="js/jquery.easing.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<script>
$(function() {
$("div").slideUp(5000, "easeInOutQuart");
});
</script>
<div style="height: 300px; width: 300px; background: green;"></div>
</body>
** 我也在使用localhost服务器而不是实际在线,即使我的本地服务器上有源文件,这会影响插件吗?
答案 0 :(得分:7)
JQuery只提供一个缓动函数作为标准,其他的是easing plugin的一部分。这包括easeInOutQuart。
根据jQuery API,.slideUp
调用看起来应该是这样的:
$("#top_slide").slideUp({ duration: 5000, easing: "easeInOutQuart" });
jsfiddle:http://jsfiddle.net/L9D8e/
编辑 - 这个版本的html肯定有效!
<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min.js></script>
</head>
<body>
<script>
$(function() {
$("div").slideUp(5000, "easeInOutQuart");
});
</script>
<div style="height: 300px; width: 300px; background: green;"></div>
</body>
</html>
答案 1 :(得分:0)
您可以使用缓动插件
$("#top_slide").slideUp({duration:5000, easing:"easeInOutQuart"});