詳解jQuery中基本的動畫方法
大致介紹
通過jQuery中基本的動畫方法,能夠輕松地為網(wǎng)頁添加非常精彩的視覺效果,給用戶一種全新的體驗
jQuery中的動畫
show()和hide()方法
1、show()方法和hide()方法是jQuery中最基本的方法,hide()方法會將一個元素的display設(shè)置為"none";
2、show()方法和hide()方法會同時改變元素的寬度、高度和透明度
3、在一個元素使用hide()方法時會記錄原先的display屬性,當調(diào)用show()方法的時候會根據(jù)hide()方法記住的display屬性值來顯示該元素
4、show()方法和hide()方法都能接受一個參數(shù),表示運動的快慢
$('.div1').toggle(function(){ $('.div2').hide(600); },function(){ $('.div2').show(600); });
fadeIn()方法和fadeOut()方法
1、fadeOut()方法在指定的一段時間內(nèi)只降低元素的不透明度,而fadeIn()方法則相反
2、接受一個參數(shù)
$('.div1').toggle(function(){ $('.div2').fadeIn(600); },function(){ $('.div2').fadeOut(600); });
slideUp()方法和slideDown()方法
1、slideUp()方法和slideDown()方法只會改變元素的高度。如果一個元素的display屬性值為"none",當調(diào)用slideDown()方法時,這個元素將由上至下延伸,slideUp()方法相反
2、接受一個參數(shù)
$('.div1').toggle(function(){ $(this).next().slideUp(); },function(){ $(this).next().slideDown(); });
自定義動畫方法animate()
語法:animate(params,speed,callback);
(1)params:一個包含樣式屬性及值得映射
(2)speed:速度參數(shù),可選
(3)callback:在動畫完成時執(zhí)行的函數(shù),可選
1、基本用法
$('.div1').click(function(){ $('.div2').animate({width:'+=50px',height:'300px'},600); });
2、多重動畫
如果要采用鏈式運動可以采用鏈式寫法
$('.div1').click(function(){ $('.div2').animate({width:'350px'},600) .animate({height:'300px'},600); });
注意:如果采用鏈式寫法時用了css()方法,css()方法不會添加到運動隊列中,會直接執(zhí)行而不等待前面的動畫
$('.div1').click(function(){ $('.div2').animate({width:'350px'},600) .animate({height:'300px'},600) .css('border','10px solid black'); });
這個元素的邊框會在一開始就添加到了元素上,要解決這個問題的辦法就是使用回調(diào)函數(shù)
如果要同時運動可將要運動的值寫在一起
$('.div1').click(function(){ $('.div2').animate({width:'350px',height:'300px'},600); });
回調(diào)函數(shù)
回調(diào)函數(shù)適用與jQuery所有的動畫效果方法
例如要解決鏈式寫法css()屬性會直接執(zhí)行的問題可以采用回調(diào)函數(shù)的方法
$('.div1').click(function(){ $('.div2').animate({width:'350px'},600) .animate({height:'300px'},600,function(){ $('.div2').css('border','10px solid black'); }); });
停止動畫和判斷是否處于動畫狀態(tài)
1、停止元素的動畫
stop()方法接受兩個參數(shù)
第一個參數(shù)為true或者false,表示是否要清空為執(zhí)行完的動畫隊列,例如我們寫鏈式動畫時,如果第一個參數(shù)為true,當我們阻止了正在進行的一個動畫操作后,后面的動畫操作都會被清空,如果參數(shù)為false時,就只會阻止當前的這個動畫,動畫隊列后的動畫依舊執(zhí)行
第二個參數(shù)為true或者false,表示是否要將正在執(zhí)行的動畫跳轉(zhuǎn)到末狀態(tài)
2、判斷元素是否處于動畫狀態(tài)
如果用戶頻繁的執(zhí)行一個animate()動畫時,就會出現(xiàn)動畫積累,解決方法就是判斷元素是否正處于動畫狀態(tài),如果元素不處于動畫狀態(tài),才為元素添加新的動畫
if(!$('div1').is(':animated')){ // 添加動畫 }
3、延遲動畫
如果要延遲執(zhí)行一個動畫,就可以使用delay()方法
$('.div1').click(function(){ $('.div2').animate({width:'350px'},600) .delay(1000) .animate({height:'300px'},600,function(){ $('.div2').css('border','10px solid black'); }); });
其他動畫方法
1、slideToggle()方法
通過高度的變化來切換匹配的元素的可見性
$('.div1').click(function(){ $('.div2').slideToggle(); });
2、fadeTo()方法
可以把元素的不透明度以漸進的方式調(diào)整到指定的值,這個動畫只調(diào)整元素的不透明度
$('.div1').click(function(){ $('.div2').fadeTo(600,0.5); });
3、fadeToggle()方法
通過不透明度來切換匹配元素的可見性
$('.div1').click(function(){ $('.div2').fadeTo(600,0.5); });
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
- jQuery實現(xiàn)的背景顏色漸變動畫效果示例
- jQuery之動畫效果大全
- jQuery Ajax 加載數(shù)據(jù)時異步顯示加載動畫
- 原生js仿jquery animate動畫效果
- jQuery實現(xiàn)圖像旋轉(zhuǎn)動畫效果
- jQuery中使用animate自定義動畫的方法
- 深入理解jquery自定義動畫animate()
- jQuery實現(xiàn)點擊水紋波動動畫
- 基于jquery fly插件實現(xiàn)加入購物車拋物線動畫效果
- 利用jquery制作滾動到指定位置觸發(fā)動畫
- jQuery動畫效果圖片輪播特效
- jQuery動畫_動力節(jié)點節(jié)點Java學院整理
相關(guān)文章
jQuery刪除節(jié)點的三個方法即remove()detach()和empty()
jQuery提供了三種刪除節(jié)點的方法,即remove(),detach()和empty(),下面為大家詳細介紹下jQuery刪除節(jié)點三個方法的具體使用2013-12-12jQuery實現(xiàn)選項聯(lián)動輪播效果【附實例】
下面小編就為大家?guī)硪黄猨Query實現(xiàn)選項聯(lián)動輪播效果【附實例】。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考2016-04-04jQuery幫助之CSS尺寸(五)outerHeight、outerWidth
在前面我們分別通過innerHeight()和innerWidth()來獲得第一個匹配元素內(nèi)部區(qū)域的高度和寬度,我們在應(yīng)用中往往除了需要內(nèi)部的尺寸,同樣還需要知道外部的高度和寬度.2009-11-11jquery過濾特殊字符'',防sql注入的實現(xiàn)方法
下面小編就為大家?guī)硪黄猨query過濾特殊字符',防sql注入的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08Jquery解析json字符串及json數(shù)組的方法
這篇文章主要介紹了Jquery解析json字符串及json數(shù)組的方法,實例分析了jQuery操作json格式字符串與數(shù)組的相關(guān)技巧,需要的朋友可以參考下2015-05-05