jquery.easing.js--animate--easing--参数
animate() 方法执行 CSS 属性集的自定义动画。
该方法通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。
只有数字值可创建动画(比如 "margin:30px")。字符串值无法创建动画(比如 "background-color:red")。
注释:使用 "+=" 或 "-=" 来创建相对动画(relative animations)。
语法 1
$(selector).animate(styles,speed,easing,callback)
参数描述
styles
必需。规定产生动画效果的 CSS 样式和值。
可能的 CSS 样式值(提供实例):
backgroundPosition
borderWidth
borderBottomWidth
borderLeftWidth
borderRightWidth
borderTopWidth
borderSpacing
margin
marginBottom
marginLeft
marginRight
marginTop
outlineWidth
padding
paddingBottom
paddingLeft
paddingRight
paddingTop
height
width
maxHeight
maxWidth
minHeight
minWidth
font
fontSize
bottom
left
right
top
letterSpacing
wordSpacing
lineHeight
textIndent
注释:CSS 样式使用 DOM 名称(比如 "fontSize")来设置,而非 CSS 名称(比如 "font-size")。
speed
可选。规定动画的速度。默认是 "normal"。
可能的值:
毫秒 (比如 1500)
"slow"
"normal"
"fast"
easing
可选。规定在不同的动画点中设置动画速度的 easing 函数。
内置的 easing 函数:
swing
linear
扩展插件中提供更多 easing 函数。
callback
可选。animate 函数执行完之后,要执行的函数。
如需学习更多有关 callback 的内容,请访问我们的 jQuery Callback 这一章。
语法 2
$(selector).animate(styles,options)
参数描述
styles必需。规定产生动画效果的 CSS 样式和值(同上)。
options
可选。规定动画的额外选项。
可能的值:
speed - 设置动画的速度
easing - 规定要使用的 easing 函数
callback - 规定动画完成之后要执行的函数
step - 规定动画的每一步完成之后要执行的函数
queue - 布尔值。指示是否在效果队列中放置动画。如果为 false,则动画将立即开始
specialEasing - 来自 styles 参数的一个或多个 CSS 属性的映射,以及它们的对应 easing 函数
这个是缓动函数啦 并且这个是基于时间的缓动
有相关的教程
这里说比较复杂了 可以先看看教程
缓动算法Tween
哪里不懂得话 在追问
加我QQ也可以
不是这种效果,我晕。。,一条直线运动,运动的速度逐渐快起来,就行汽车启动那样,慢慢的快起来
http://www.cnblogs.com/top5/archive/2011/06/28/2092495.html
复制它的代码到本地,,顺便学习学习 希望可以帮到你
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="/js/sandbox/jquery/jquery-1.8.2.min.js" type="text/javascript"></script>
<title>
RunJS 演示代码
</title>
<style>
div{
border: 1px solid #fd3;
position: absolute;
}
</style>
<script>
var speed = 1500, dest = 500;
jQuery(function($){
var div = $("div");
var run = function(){
var left = parseFloat(div.css("left")) || div.prop("offsetLeft");
if (left == 500) dest = 0;
else if (left == 0) dest = 500;
div.text(speed);
div.animate({
left: dest + "px"
}, speed, function(){
div.clearQueue().delay(100).queue(function(){
speed -= 100;
speed < 100 ? speed = 100:0;
run();
});
});
}
run();
});
</script>
</head>
<body>
<div>
dd
</div>
</body>
</html>