-
jQuery中淡出動畫fadeOut
讓元素在頁面不可見,常用的辦法就是通過設置樣式的display:none。除此之外還可以一些類似的辦法可以達到這個目的。這里要提一個透明度的方法,設置元素透明度為0,可以讓元素不可見,透明度的參數(shù)是0~1之間的值,通過改變這個值可以讓元素有一個透明度的效果。常見的淡入淡出動畫正是這樣的原理。
fadeOut()函數(shù)用于隱藏所有匹配的元素,并帶有淡出的過渡動畫效果
所謂"淡出"隱藏的,元素是隱藏狀態(tài)不對作任何改變,元素是可見的,則將其隱藏。
.fadeOut(?[duration?],?[?complete?]?)
通過不透明度的變化來實現(xiàn)所有匹配元素的淡出效果,并在動畫完成后可選地觸發(fā)一個回調函數(shù)。這個動畫只調整元素的不透明度,也就是說所有匹配的元素的高度和寬度不會發(fā)生變化。
字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時。如果提供任何其他字符串,或者這個duration參數(shù)被省略,那么默認使用400毫秒的延時
查看全部 -
jQuery中上卷下拉切換slideToggle
slideDown與slideUp是一對相反的方法。需要對元素進行上下拉卷效果的切換,jQuery提供了一個便捷方法slideToggle用滑動動畫顯示或隱藏一個匹配元素
基本的操作:slideToggle();
這是最基本的操作,獲取元素的高度,使這個元素的高度發(fā)生改變,從而讓元素里的內容往下或往上滑。
提供參數(shù):.slideToggle( [duration ] ,[?complete ] )
同樣的提供了時間、還有動畫結束的回調。在參數(shù)對應的時間內,元素會完成動畫,然后出發(fā)回調函數(shù)
同時也提供了時間的快速定義,字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時
slideToggle("fast")??slideToggle("slow")
注意:
display屬性值保存在jQuery的數(shù)據緩存中,所以display可以方便以后可以恢復到其初始值
當一個隱藏動畫后,高度值達到0的時候,display 樣式屬性被設置為none,以確保該元素不再影響頁面布局
查看全部 -
jQuery中上卷動畫slideUp
對于顯示的元素,在將其隱藏的過程中,可以對其進行一些變化的動畫效果。之前學過了hide方法,hide方法在顯示的過程中也可以有動畫,但 是.hide()方法將為匹配元素的寬度,高度,以及不透明度,同時進行動畫操作。這里將要學習一個新的顯示方法slideUp方法
最簡單的使用:不帶參數(shù)
$("elem").slideUp();
這個使用的含義就是:找到元素的高度,然后采用一個下滑動畫讓元素一直滑到隱藏,當高度為0的時候,也就是不可見的時,修改元素display 樣式屬性被設置為none。這樣就能確保這個元素不會影響頁面布局了
帶參數(shù):
.slideUp(?[duration?]?[,?easing?]?[,?complete?]?)
同樣可以提供一個時間,然后可以使用一種過渡使用哪種緩動函數(shù),jQuery默認就2種,可以通過下載插件支持。最后一個動畫結束的回調方法。
因為動畫是異步的,所以要在動畫之后執(zhí)行某些操作就必須要寫到回調函數(shù)里面,這里要特別注意
查看全部 -
jQuery中下拉動畫slideDown
對于隱藏的元素,在將其顯示出來的過程中,可以對其進行一些變化的動畫效果。之前學過了show方法,show方法在顯示的過程中也可以有動畫,但是.show()方法將會匹配元素的寬度,高度,以及不透明度,同時進行動畫操作。這里將要學習一個新的顯示方法slideDown方法
.slideDown():用滑動動畫顯示一個匹配元素
.slideDown()方法將給匹配元素的高度的動畫,這會導致頁面的下面部分滑下去,彌補了顯示的方式
常見的操作,提供一個動畫是時間,然后傳遞一個回調,用于知道動畫是什么時候結束
.slideDown(?[duration?]?[,?complete?]?)
持續(xù)時間(duration)是以毫秒為單位的,數(shù)值越大,動畫越慢,不是越快。字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時。如果提供任何其他字符串,或者這個duration參數(shù)被省略,那么默認使用400 毫秒的延時。
具體使用:
$("ele").slideDown(1000,?function()?{?????//等待動畫執(zhí)行1秒后,執(zhí)行別的動作....?});
注意事項:
下拉動畫是從無到有,所以一開始元素是需要先隱藏起來的,可以設置display:none
如 果提供回調函數(shù)參數(shù),callback會在動畫完成的時候調用。將不同的動畫串聯(lián)在一起按順序排列執(zhí)行是非常有用的。這個回調函數(shù)不設置任何參數(shù),但是 this會設成將要執(zhí)行動畫的那個DOM元素,如果多個元素一起做動畫效果,那么要非常注意,回調函數(shù)會在每一個元素執(zhí)行完動畫后都執(zhí)行一次,而不是這組 動畫整體才執(zhí)行一次
查看全部 -
jQuery中顯示與隱藏切換toggle方法
show與hide是一對互斥的方法。需要對元素進行顯示隱藏的互斥切換,通常情況是需要先判斷元素的display狀態(tài),然后調用其對應的處理方法。比如顯示的元素,那么就要調用hide,反之亦然。 對于這樣的操作行為,jQuery提供了一個便捷方法toggle用于切換顯示或隱藏匹配元素
基本的操作:toggle();
這是最基本的操作,處理元素顯示或者隱藏,因為不帶參數(shù),所以沒有動畫。通過改變CSS的display屬性,匹配的元素將被立即顯示或隱藏,沒有動畫。
如果元素是最初顯示,它會被隱藏
如果隱藏的,它會顯示出來
display屬性將被儲存并且需要的時候可以恢復。如果一個元素的display值為inline,然后是隱藏和顯示,這個元素將再次顯示inline
提供參數(shù):.toggle( [duration ] [, complete ] )
同樣的提供了時間、還有動畫結束的回調。在參數(shù)對應的時間內,元素會發(fā)生顯示/隱藏的改變,在改變的過程中會把元素的高、寬、不透明度進行一系列動畫效果。這個元素其實就是show與hide的方法
直接定位:.toggle(display)
直接提供一個參數(shù),指定要改變的元素的最終效果
其實就是確定是使用show還是hide方法
if?(?display?===?true?)?{???$(?"elem"?).show();?}?else?if?(?display?===?false?)?{???$(?"elem"?).hide();?}
toggle方法就是show與hide的相互切換的一個快捷方法,具體使用可以參考右邊的案例:查看全部 -
jQuery中顯示元素的show方法
css中有display:none屬性,同時也有display:block,所以jQuery同樣提供了與hide相反的show方法
方法的使用幾乎與hide是一致的,hide是讓元素顯示到隱藏,show則是相反,讓元素從隱藏到顯示
看一段代碼:使用上一致,結果相反
$('elem').hide(3000).show(3000)
讓元素執(zhí)行3秒的隱藏動畫,然后執(zhí)行3秒的顯示動畫。
show與hide方法是非常常用的,但是一般很少會基于這2個屬性執(zhí)行動畫,大多情況下還是直接操作元素的顯示與隱藏為主
注意事項:
show與hide方法是修改的display屬性,通過是visibility屬性布局需要通過css方法單獨設置
如果使用!important在你的樣式中,比如display: none !important,如果你希望.show()方法正常工作,必須使用.css('display', 'block !important')重寫樣式
如果讓show與hide成為一個動畫,那么默認執(zhí)行動畫會改變元素的高度,高度,透明度
查看全部 -
jQuery中隱藏元素的hide方法
讓頁面上的元素不可見,一般可以通過設置css的display為none屬性。但是通過css直接修改是靜態(tài)的布局,如果在代碼執(zhí)行的時候,一般是通過js控制元素的style屬性,這里jQuery提供了一個快捷的方法.hide()來達到這個效果
$elem.hide()
提供參數(shù):
.hide(?options?)
當提供hide方法一個參數(shù)時,.hide()就會成為一個動畫方法。.hide()方法將會匹配元素的寬度,高度,以及不透明度,同時進行動畫操作
快捷參數(shù):
.hide("fast?/?slow")
這是一個動畫設置的快捷方式,'fast' 和 'slow' 分別代表200和600毫秒的延時,就是元素會執(zhí)行200/600毫秒的動畫后再隱藏
注意:
jQuery在做hide操作的時候,是會保存本身的元素的原始屬性值,再之后通過對應的方法還原的時候還是初始值。比如一個元素的display屬性值為inline,那么隱藏再顯示時,這個元素將再次顯示inline。一旦透明度 達到0,display樣式屬性將被設置為none,這個元素將不再在頁面中影響布局
查看全部 -
Toggle 切換
查看全部 -
linear
表示線性變化,簡單來說就是勻速變化
查看全部 -
width: 'linear', height: 'easeOutBounce' }, complete: function() { $(this).after('<div>Animation complete.</div>'); } });查看全部
-
.animate( properties, options ) options參數(shù) duration - 設置動畫執(zhí)行的時間 easing - 規(guī)定要使用的 easing 函數(shù),過渡使用哪種緩動函數(shù) step:規(guī)定每個動畫的每一步完成之后要執(zhí)行的函數(shù) progress:每一次動畫調用的時候會執(zhí)行這個回調,就是一個進度的概念 complete:動畫完成回調 其中最關鍵的一點就是: 如果多個元素執(zhí)行動畫,回調將在每個匹配的元素上執(zhí)行一次,不是作為整個動畫執(zhí)行一次 列出常用的方式: $('#elem').animate({ width: 'toggle', height: 'toggle' }, { duration: 5000, specialEasing: {查看全部
-
當使用 animate() 時,必須使用 Camel 標記法書寫所有的屬性名,比如,必須使用 paddingLeft 而不是 padding-left,使用 marginRight 而不是 margin-right,等等。
同時,色彩動畫并不包含在核心 jQuery 庫中。
如果需要生成顏色動畫,您需要從 jQuery.com 下載 Color Animations 插件。
查看全部 -
$(selector).hide(speed,callback); $(selector).show(speed,callback);
可選的 speed 參數(shù)規(guī)定隱藏/顯示的速度,可以取以下值:"slow"、"fast" 或毫秒。
可選的 callback 參數(shù)是隱藏或顯示完成后所執(zhí)行的函數(shù)名稱。
查看全部 -
如果不傳遞任何參數(shù)給 .index() 方法,則返回值就是jQuery對象中第一個元素相對于它同輩元素的位置
如果在一組元素上調用 .index() ,并且參數(shù)是一個DOM元素或jQuery對象, .index() 返回值就是傳入的元素相對于原先集合的位置
如果參數(shù)是一個選擇器, .index() 返回值就是原先元素相對于選擇器匹配元素的位置。如果找不到匹配的元素,則 .index() 返回 -1
查看全部 -
jQuery.trim()函數(shù)用于去除字符串兩端的空白字符
查看全部
舉報