1. 程式人生 > >jQuery筆記(三)動畫效果

jQuery筆記(三)動畫效果

動畫效果

1、顯示與隱藏

   ①show() - 顯示

       無參版本 - 不具有動畫效果

   ②show(speed,callback)有參版本 - 具有動畫效果,兩個引數都可以不寫

       speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

   callback - 當動畫執行完畢後執行的函式,

           $("div").show(5000);

           $("div").show(5000,function(){alert('xxx');});

   ③hide() - 隱藏

         無參版本 - 不具有動畫效果

   ④hide(speed,callback)有參版本 - 具有動畫效果

       speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

   callback - 當動畫執行完畢後執行的函式

 2、滑動效果

   ①slideUp() - 向上滑動

       可以不傳遞引數 - 底層具有預設時長,執行的效果依然具有動畫效果

       引數

           speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

       callback - 當動畫執行完畢後執行的函式

       $("div").slideDown(3000);

   ②slideDown() - 向下滑動

       可以不傳遞引數 - 底層具有預設時長,執行的效果依然具有動畫效果

         引數

           speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

       callback - 當動畫執行完畢後執行的函式

3、淡入淡出

   ①fadeIn() - 淡入

         可以不傳遞引數 - 底層具有預設時長,執行的效果依然具有動畫效果

         引數

           speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

       callback - 當動畫執行完畢後執行的函式

        $("button:first").click(function(){

    $("div").fadeIn(3000);

    $("div").fadeOut(3000);

     });

②fadeOut() - 淡出

         可以不傳遞引數 - 底層具有預設時長,執行的效果依然具有動畫效果

         引數

           speed - 設定動畫執行的時長,單位為毫秒,三個預定義值 - slow|normal|fast

       callback - 當動畫執行完畢後執行的函式

  ③fadeTo() - 將當前元素從透明度一個值到另一個值

 

4、自定義動畫

① animate(params,duration,easing,callback)

         params - 設定動畫樣式(CSS屬性)

         duration - 設定動畫執行時長,單位為毫秒

         callback - 動畫執行完畢後的函式

         easing - 要使用的擦除效果的名稱(不使用)

    

  ②併發效果 - 多個動畫效果同時執行

       animate({

          attrName1 : attrValue1,

      attrName2 : attrValue2,

        ...

       },time);

 

③排隊效果 - 多個動畫效果按照先後順序執行       animate({attrName:attrValue},time).animate({attrName:attrValue},time).animate({attrName:attrValue},time)...

 

 

④例:併發效果,一起執行

$("div").animate({

"width" : 50,

"height" : 50

},3000);

 

排隊效果 - 按照先後順序執行

$("div").animate({

"width" : 50

},3000).animate({

"height" : 50

},3000).animate({

"left" : 200

},3000);

 

     切換動畫  

       toggle() - show()+hide()  jquery 1.9後不能再使用

       slideToggle() - slideUp()+slideDown()

例、function move(){

$("div").slideToggle(3000,function(){

move();

});

  }

  move();

  

 

5、類(似)陣列操作 -  jQuery物件是陣列物件

     屬性:length - 獲取當前陣列的長度(當前jQuery物件包含多少個DOM物件)

     方法

       get(index) - 根據角標返回DOM物件

       eq(index) - 根據角標返回DOM物件

       :eq()選擇器的作用一致

       index(obj) - 根據DOM物件返回對應角標

     隱式迭代

       概念

         隱式迭代 - jQuery的遍歷

           在遍歷的過程中,只關注入口和出口

 var arr = [];// 陣列就是入口

 for(var i=0;i<arr.length;i++){

    var ele = arr[i];// 陣列的每個元素就是出口

 }

         顯式迭代 - 例如for迴圈

           在遍歷的過程中,從開始到結束控制遍歷的所有過程

       jQuery的遍歷

         $().each(callback) - 物件方法

         $.each(obj,callback) - 全域性函式