欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery-动画

程序员文章站 2022-08-08 16:41:19
jQuery -动画 jQuery动画分为三个部分,非自定义动画,自定义动画,和全局动画设置。 一、非自定义动画: 1.显示、隐藏: show( ) 、hide( )、toggle() 两种用法:1)不传参数,代表直接显示隐藏。 2) 向方法中传递一个参数,这个参数为number类型,代表动画的执行 ......

jquery -动画

jquery动画分为三个部分,非自定义动画,自定义动画,和全局动画设置。

 

一、非自定义动画:
 
  1.显示、隐藏:
 
      show( ) 、hide( )、toggle()
 
    两种用法:1)不传参数,代表直接显示隐藏。
 
         2) 向方法中传递一个参数,这个参数为number类型,代表动画的执行时间。会有显示隐藏的动画效果。
 
          示例:show(100)、hide(100)、toggle(100)
 
      除此之外,jquery还为动画方法提供了三种字符串形式的参数:fast、slow、和空字符串''
 
          示例:show('fast')、hide('slow')、toggle('')
 
          三种参数的执行时间分别为 :'fast' :200毫秒   ''(默认值):400毫秒   'slow':600毫秒
  2.滑动:
 
      slideup():向上滑动(隐藏)
 
      slidedown():向下滑动(显示)
 
      slidetoggle():滑动(自动)
 
  3.淡入淡出:
 
      fadeout():淡出(隐藏)
 
      fadein():淡入(显示)
 
      fadetoggle():显示隐藏()自动
 
    fadeto(),该方法接受两个参数。
            参数1是动画执行的时间,参数2是期望达到的透明度。
 
 
二、自定义动画
 
  animate()方法
 
      animate()方法有三个参数。分别是动画目标(target),动画执行时间回调函数。只有第一个参数是必填参数
    
animate()方法的使用:
 
  将元素属性变换为自定义动画中的目标属性,所有参数中的属性一起改变。
animate({
        'width':'200px',
        'height':'200px'
    })

 

  设置的属性,支持运算。

animate({
        'width':'+=200px'
    })

 

如果想要动画按照顺序执行(执行完第一个动画之后,再执行下一个动画)有三种方法:

 

  1)借助动画的回调函数(操作不同元素的时候,推荐使用回调函数)

$('input').click(function(){
    $('div').animate({
        'width':'400px',
        'height':'400px',
    },function(){
        $('div').animate({
            'width':'200px',
            'height':'200px'
        })
    })
})

  

  2)将动画效果分开写

$('input').click(function(){
    $('div').animate({
        'width':'400px',
        'height':'400px',
    })
    $('div').animate({
        'width':'200px',
        'height':'200px'
    })
})

 

  3)连缀(操作同一元素的时候,推荐使用连缀)

$('input').click(function(){
    $('div').animate({
        'width':'400px',
        'height':'400px',
    }).animate({
        'width':'200px',
        'height':'200px'
    })
})

 

三、动画及相关方法

  1.stop()方法
 
    这个方法是停止动画的方法,他有两个参数,都是布尔值。
      参数1:代表是否清除动画队列;参数2:代表是否直接运行到最后结果
 
  2.delay()方法
 
    延时执行,该方法有一个参数,是延时执行的毫秒数。
 
  3.动画的递归
$('div').slidetoggle(2000,recursion)

function recursion(){
    $(this).slidetoggle(2000,recursion)
}

    附赠个高级写法:

$('div').slidetoggle(2000,function(){
    $(this).slidetoggle(2000,arguments.callee)
})

//arguments.callee:常用在匿名函数中, 代表当前的函数。

 

jquery的动画,以上。