jquery animate 动画效果使用说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery animate 动画效果使用说明相关的知识,希望对你有一定的参考价值。

参考技术A animate(
params,
[duration],
[easing],
[callback] )
用于创建自定义动画的函数。
这个函数的关键在于指定动画形式及结果样式属性对象。这个对象中每个属性都表示一个可以变化的样式属性(如“height”、“top”或“opacity”)。注意:所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left.
而每个属性的值表示这个样式属性到多少时动画结束。如果是一个数值,样式属性就会从当前的值渐变到指定的值。如果使用的是“hide”、“show”或“toggle”这样的字符串值,则会为该属性调用默认的动画形式。

jQuery
1.2
中,你可以使用
em

%
单位。另外,在
jQuery
1.2
中,你可以通过在属性值前面指定
"+="

"-="
来让元素做相对运动。
jQuery
1.3中,如果duration设为0则直接完成动画。而在以前版本中则会执行默认动画。
点击按钮后div元素的几个不同属性一同变化:
复制代码
代码如下:
//
在一个动画中同时应用三种类型的效果
$("#go").click(function()
$("#block").animate(
width:
"90%",
height:
"100%",
fontSize:
"10em",
borderWidth:
10
,
1000
);
);
animate(
params,
options
)
用于创建自定义动画的函数。
这个函数的关键在于指定动画形式及结果样式属性对象。这个对象中每个属性都表示一个可以变化的样式属性(如“height”、“top”或“opacity”)。注意:所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left.
而每个属性的值表示这个样式属性到多少时动画结束。如果是一个数值,样式属性就会从当前的值渐变到指定的值。如果使用的是“hide”、“show”或“toggle”这样的字符串值,则会为该属性调用默认的动画形式。

jQuery
1.2
中,你可以使用
em

%
单位。另外,在
jQuery
1.2
中,你可以通过在属性值前面指定
"+="

"-="
来让元素做相对运动。
第一个按钮按了之后展示了不在队列中的动画。在div扩展到90%的同时也在增加字体,一旦字体改变完毕后,边框的动画才开始:
复制代码
代码如下:
$("#go1").click(function()
$("#block1").animate(

width:
"90%",

queue:
false,
duration:
5000

)
.animate(

fontSize:
'10em'

,
1000
)
.animate(

borderWidth:
5
,
1000);
);
$("#go2").click(function()
$("#block2").animate(

width:
"90%",
1000
)
.animate(

fontSize:
'10em'

,
1000
)
.animate(

borderWidth:
5
,
1000);
);
stop(
[clearQueue],
[gotoEnd]
)
停止所有在指定元素上正在运行的动画。
如果队列中有等待执行的动画(并且clearQueue没有设为true),他们将被马上执行
clearQueue(Boolean):如果设置成true,则清空队列。可以立即结束动画。
gotoEnd
(Boolean):让当前正在执行的动画立即完成,并且重设show和hide的原始样式,调用回调函数等。
点击Go之后开始动画,点Stop之后会在当前位置停下来:
复制代码
代码如下:
//
开始动画
$("#go").click(function()
$(".block").animate(left:
'+200px',
5000);
);
//
当点击按钮后停止动画
$("#stop").click(function()
$(".block").stop();
);

jQuery动画效果animate和scrollTop结合使用实例

CSS属性值是逐渐改变的,这样就可以创建动画效果。 只有数字值可创建动画(比如 "margin:30px")。 字符串值无法创建动画(比如 "background-color:red")。

复制代码 代码如下:
$(‘#shang‘).click(function(){$(‘html,body‘).animate({scrollTop: ‘0px‘}, 800);});

上面的代码表示滚动条跳到0的位置,页面移动速度是800。 结合scrollTop实用示例:

复制代码 代码如下:
jQuery(document).ready(function($){  $(‘#shang‘).click(function(){   $(‘html,body‘).animate({scrollTop: ‘0px‘}, 800);  });  $(‘#comt‘).click(function(){   $(‘html,body‘).animate({scrollTop:$(‘#comments‘).offset().top}, 800);  });  $(‘#xia‘).click(function(){   $(‘html,body‘).animate({scrollTop:$(‘#footer‘).offset().top}, 800);  }); });

表示点击相关ID移动到指定位置: 点击ID为shang的元素,回到顶部; 点击ID为comt的元素,回到ID为comments的位置; 点击ID为xia的元素,回到底部;

 

原生js如何实现jQuery.animate中的scrollTop方法

  • jquery
  •                                                                     
  • javascript
  •                                                             

                            

radical                                2016年12月02日提问

                        

    

                                                         0                                                     
                    

网上找不到一个好的介绍来实现,

$(‘html, body‘).animate({
  scrollTop: 800
}, 1000)

怎么控制这个scrollTop的 时间呢?

                    
                
 

查看全部 3 个回答        

                                 0                             

你要做的不是控制时间,而是控制步长,比如800px,800ms,就是800ms内移动800px,如果是1600px,那就800ms内移动1600px

以上是关于jquery animate 动画效果使用说明的主要内容,如果未能解决你的问题,请参考以下文章

jquery animate 动画效果使用说明

Jquery动画(animate)的使用及扩展说明

jQuery效果——动画

jQuery animate()动画效果

jQuery动画animate()的使用

jQuery效果2