JQuery(二)——简单动画效果

时间:2022-03-03 13:24:12

上一篇博客总结了JQuery的一些基本知识,这篇博客重点从JQuery能够制造各种各样的网页效果方面来进行总结。总结一些常见的常用的基本效果的必备方法。从隐藏显示,淡入淡出,滑动,动画等几个方面来简单总结一下。

一,JQuery实现隐藏显示的功能:

1,jQuery hide() 和 show()

通过 jQuery,您可以使用hide() 和 show() 方法来隐藏和显示 HTML 元素:

2,jQuery toggle()

通过 jQuery,您可以使用toggle() 方法来切换 hide() 和 show() 方法。

3,语法:

$(selector).hide(speed,callback);

$(selector).show(speed,callback);

$(selector).toggle(speed,callback);

可选的speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。

可选的callback 参数是隐藏或显示完成后所执行的函数名称。

我用toggle来举个例子:

[html] view plaincopyprint?在CODE上查看代码片派生到我的代码片
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").toggle();
});
});
</script>
</head>
<body>
<button type="button">切换</button>
<p>这是一个段落。</p>
<p>这是另一个段落。</p>
</body>
</html>

二,淡入淡出动画效果功能:

方法名

含义

语法

fadeIn()

用于淡入已隐藏的元素

$(selector).fadeIn(speed,callback);

fadeout()

用于淡出可见元素

$(selector).fadeOut(speed,callback);

fadeToggle()

可以在 fadeIn() 与 fadeOut() 方法之间进行切换 ,和上边的toggle功能一样

$(selector).fadeToggle(speed,callback);

fadeTo()

允许渐变为给定的不透明度(值介于 0 与 1 之间)。

$(selector).fadeTo(speed,opacity,callback);
其中:opacity为不透明度的参数(0——1之间)

我们来拿fadeTo来几个例子:

[html] view plaincopyprint?在CODE上查看代码片派生到我的代码片
<!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").fadeTo("slow",0.15);
$("#div2").fadeTo("slow",0.4);
$("#div3").fadeTo("slow",0.7);
});
});
</script>
</head> <body>
<p>演示带有不同参数的 fadeTo() 方法。</p>
<button>点击这里,使三个矩形淡出</button>
<br><br>
<div id="div1" style="width:80px;height:80px;background-color:red;"></div>
<br>
<div id="div2" style="width:80px;height:80px;background-color:green;"></div>
<br>
<div id="div3" style="width:80px;height:80px;background-color:blue;"></div>
</body>
</html>

效果图,大家自己copy一份代码运行来试试看吧!

三,滑动效果的功能,这个大家看一下这几个方法即可了,例子不在举例,和上边的都大同小异:

方法名

含义

语法

slideDown

用于向下滑动元素

$(selector).slideDown(speed,callback);

slideUp

用于向上滑动元素

同上

slideToggle

如果元素向下滑动,则 slideToggle() 可向上滑动它们。

如果元素向上滑动,则 slideToggle() 可向下滑动它们。

同上

四,动画效果,这个相对来说好看一下,也复杂一下,不过它仅仅使用了一个方法:

jQuery 动画 - animate() 方法

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

语法:

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

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

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

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

我们来看一个例子:这个例子同时使用了多次amimate方法,使其动画连贯了起来:

[html] view plaincopyprint?在CODE上查看代码片派生到我的代码片
<span style="font-size:18px;"> <!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("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");
});
});
</script>
</head> <body> <button>开始动画</button>
<p>默认情况下,所有 HTML 元素的位置都是静态的,并且无法移动。如需对位置进行操作,记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute。</p>
<div style="background:#98bf21;height:100px;width:100px;position:absolute;">
</div> </body>
</html>
</span>

五,几种效果的补充:

上边为我们常见的几种JQuery方便快捷实现的效果,这里再学习几个跟他们相关的几个方法。

1,jQuery stop() 方法:

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

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

语法:

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

解释:

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

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

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

2,上边几种动画方法语法中提到的callback函数,也就是在执行完当前动画以后要执行的函数。一定要现在callback中,否则会出现顺序不正确的结果。这里不再演示。

3,Chaining,也就是链,意思是说可以把我们上边的几种动画连写起来,这样就不需要多次查找相同的元素。看一个例子:

[html] view plaincopyprint?在CODE上查看代码片派生到我的代码片
<span style="font-size:18px;"> <!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
$(document).ready(function()
{
$("button").click(function(){
//当然这里换行来写,使其格式看着更漂亮
$("#p1").css("color","red").slideUp().slideDown();
});
});
</script>
</head> <body> <p id="p1">jQuery 链锁反应</p>
<button>点击这里</button> </body>
</html>
</span>

综上为JQuery实现的几种常见的动画效果,虽然简单,但是非常实用,我们可以通过举一反三来使其达到更好的效果。当然更多效果方法我们可以通过JQuery的API来查询,可以更多的满足我们!!!