Chinaunix首页 | 论坛 | 博客
  • 博客访问: 95506
  • 博文数量: 109
  • 博客积分: 3411
  • 博客等级: 中校
  • 技术积分: 1155
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-01 09:04
文章分类

全部博文(109)

文章存档

2011年(109)

分类: 系统运维

2011-06-28 15:37:58


除了实现了基本的显示和隐藏功能, 现在显示和隐藏弹出层是渐变动画效果! jQuery的动画函数如此简单, 第一次我在项目中使用时带给了我意外的惊喜. 曾经我一直为跨浏览器计算位置头痛, 但是通过jQueryoffset()函数和height()函数, 可以精确的计算弹出层的位置. 这些函数是封装好且跨浏览器的. 需要注意要在设置弹出层位置属性的时候,加上"px", 否则在FireFox下容易出现问题.

jQuery的动画函数主要分为三类:

1. 基本动画函数: 既有透明度渐变, 又有滑动效果. 是最常用的动画效果函数.

2. 滑动动画函数: 仅使用滑动渐变效果.

3. 淡入淡出动画函数: 仅使用透明度渐变效果.

这三类动画函数效果各不相同, 用法基本一致. 大家可以自己尝试.

另外也许上面的三类函数效果都不是我们想要的, 那么jQuery也提供了自定义动画函数, 将控制权放在我们手里让我们自己定义动画效果.

下面对三类内置动画函数和自定义动画函数分别讲解.

. 基本动画函数

上例中使用的show()hide()是我们使用最多的基本动画函数.

下面是jQuery的基本动画函数:

基本动画函数

名称

说明

举例

show( )

显示隐藏的匹配元素。

这个就是 'show( speed, [callback] )' 无动画的版本。如果选择的元素是可见的,这个方法将不会改变任何东西。无论这个元素是通过hide()方法隐藏的还是在CSS里设置了display:none;这个方法都将有效。

显示所有段落:
$("p").show()

show( speed, [callback])

以优雅的动画显示所有匹配的元素,并在显示完成后可选地触发一个回调函数。

可以根据指定的速度动态地改变每个匹配元素的高度、宽度和不透明度。在jQuery 1.3中,paddingmargin也会有动画,效果更流畅。

用缓慢的动画将隐藏的段落显示出来,历时600毫秒:
$("p").show(600);

hide( )

隐藏显示的元素

这个就是 'hide( speed, [callback] )' 的无动画版。如果选择的元素是隐藏的,这个方法将不会改变任何东西。

隐藏所有段落:
$("p").hide()

hide( speed, [callback] )

以优雅的动画隐藏所有匹配的元素,并在显示完成后可选地触发一个回调函数。

可以根据指定的速度动态地改变每个匹配元素的高度、宽度和不透明度。在jQuery 1.3中,paddingmargin也会有动画,效果更流畅。

600毫秒的时间将段落缓慢的隐藏:
$("p").hide("slow");

toggle( )

切换元素的可见状态。

如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。

切换所有段落的可见状态:
$("p").toggle()

toggle( switch )

根据switch参数切换元素的可见状态(ture为可见,false为隐藏)。

如果switch设为true,则调用show()方法来显示匹配的元素,如果switch设为false则调用hide()来隐藏元素。

切换所有段落的可见状态:
var flip = 0;
$("button").click(function () {
$("p").toggle( flip++ % 2 == 0 );
});

toggle( speed, [callback] )

以优雅的动画切换所有匹配的元素,并在显示完成后可选地触发一个回调函数。

可以根据指定的速度动态地改变每个匹配元素的高度、宽度和不透明度。在jQuery 1.3中,paddingmargin也会有动画,效果更流畅。

200毫秒将段落迅速切换显示状态,之后弹出一个对话框:
$("p").toggle("fast",function(){
alert("Animation Done.");
});

 

阅读(366) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~