jQuery提供animate()方法来创建动画。
animate()方法动画原理:改变CSS属性来影响元素行为。目前仅仅能修改属性值为数值的属性,如height weight font-size等,属性值为字符串的属性不能改。
更重要的是:在animate()方法中,属性名采用caml命令,不能使用-,如border-bottom,要写成borderBottom,将中间的-去掉,第二个单词首字母大写。
语法形式:
|
1
2
3
|
animate({ //要改变的CSS}[,speed][,easing][,complete]); |
animate()的参数有几部分,CCS部分,用花括号括起来。在花括号后面还有3个可选参数。
speed参数表示动画持续时间,单位是毫秒。1秒=1000毫秒。
easing参数,可以选择两个,一个是linear,表示动画速度是线性的,另一个是swing,表示动画过程快,开始和结尾慢。
complete参数,表示动画结束时需要调用的函数——回调函数。事件本质是函数,是回调函数。
示例:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>CSS动画</title> </script> <style> li{ max- 200px; color: #fff; } </style> </head> <body> <div> <ul id="ul"> <li id="a">鼠标</li> <li id="b">键盘</li> <li id="c">屏幕</li> <li id="d"><a>主机</a></li> </ul> </div> <script> $(function () { var $li=$("li"); // 淡入 $li.hide().each(function(index){ $(this).delay(650*index).fadeIn(700); }); // CSS 动画 $li.on("click",function(){ // $(this).fadeOut(700); $(this).animate({ opcity:0.0, paddingLeft:'+=80' },500,function(){ $(this).remove(); }); }); }); </script> </body></html> |