首页 > 代码库 > Web开发技术——Jquery5(动画)

Web开发技术——Jquery5(动画)

jQuery animate() 方法允许您创建自定义的动画。

jQuery 动画 - animate() 方法

jQuery animate() 方法用于创建自定义动画。

语法:
$(selector).animate({params},speed,callback);

必需的 params 参数定义形成动画的 CSS 属性。

可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。

可选的 callback 参数是动画完成后所执行的函数名称。

下面的例子演示 animate() 方法的简单应用;它把 <div> 元素移动到左边,直到 left 属性等于 250 像素为止:

实例
$("button").click(function(){  $("div").animate({left:‘250px‘});});

提示:默认地,所有 HTML 元素都有一个静态位置,且无法移动。

如需对位置进行操作,要记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute!

jQuery animate() - 操作多个属性

请注意,生成动画的过程中可同时使用多个属性:

实例
$("button").click(function(){      $("div").animate(    {    left:‘250px‘,    opacity:‘0.5‘,    height:‘150px‘,    width:‘150px‘  });});

提示:可以用 animate() 方法来操作所有 CSS 属性吗?

是的,几乎可以!不过,需要记住一件重要的事情:当使用 animate() 时,必须使用 Camel 标记法书写所有的属性名,比如,必须使用 paddingLeft 而不是 padding-left,使用 marginRight 而不是 margin-right,等等。

同时,色彩动画并不包含在核心 jQuery 库中。

如果需要生成颜色动画,您需要从 jQuery.com 下载 Color Animations 插件。

jQuery animate() - 使用相对值

也可以定义相对值(该值相对于元素的当前值)。需要在值的前面加上 += 或 -=:

实例
$("button").click(function(){      $("div").animate({    left:‘250px‘,    height:‘+=150px‘,    width:‘+=150px‘  });});

jQuery animate() - 使用预定义的值

您甚至可以把属性的动画值设置为 "show"、"hide" 或 "toggle":

实例
$("button").click(function(){  $("div").animate({    height:‘toggle‘  });});

jQuery animate() - 使用队列功能

默认地,jQuery 提供针对动画的队列功能。

这意味着如果您在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的“内部”队列。然后逐一运行这些 animate 调用。

实例 1

隐藏,如果您希望在彼此之后执行不同的动画,那么我们要利用队列功能:

$("button").click(function(){      var div=$("div");      div.animate({height:‘300px‘,opacity:‘0.4‘},"slow");      div.animate({width:‘300px‘,opacity:‘0.8‘},"slow");      div.animate({height:‘100px‘,opacity:‘0.4‘},"slow");      div.animate({width:‘100px‘,opacity:‘0.8‘},"slow");});
实例 2

下面的例子把 <div> 元素移动到右边,然后增加文本的字号:

$("button").click(function(){      var div=$("div");      div.animate({left:‘100px‘},"slow");      div.animate({fontSize:‘3em‘},"slow");});

jQuery 停止动画

jQuery stop() 方法用于在动画或效果完成前对它们进行停止。

实例

jQuery stop() 滑动

演示 jQuery stop() 方法。

jQuery stop() 动画(带有参数)

演示 jQuery stop() 方法。

jQuery stop() 方法

jQuery stop() 方法用于停止动画或效果,在它们完成之前。

stop() 方法适用于所有 jQuery 效果函数,包括滑动、淡入淡出和自定义动画。

语法
$(selector).stop(stopAll,goToEnd);

可选的 stopAll 参数规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。

可选的 goToEnd 参数规定是否立即完成当前动画。默认是 false。

因此,默认地,stop() 会清除在被选元素上指定的当前动画。

下面的例子演示 stop() 方法,不带参数:

实例
$("#stop").click(function(){  $("#panel").stop();});

Web开发技术——Jquery5(动画)