-
fadeIn:淡入效果,內(nèi)容顯示,opacity是0到1 fadeOut:淡出效果,內(nèi)容隱藏,opacity是1到0
如果要讓元素保持動(dòng)畫(huà)效果,執(zhí)行opacity = 0.5的效果時(shí),要如何處理?
如果不考慮CSS3,我們用JS實(shí)現(xiàn)的話,基本就是通過(guò)定時(shí)器,在設(shè)定的時(shí)間內(nèi)一點(diǎn)點(diǎn)的修改opacity的值,最終為0.5,原理雖說(shuō)簡(jiǎn)單,但是總不如一鍵設(shè)置這么舒服,jQuery提供了fadeTo方法,可以讓改變透明度一步到位
語(yǔ)法
.fadeTo(?duration,?opacity?,callback)
必需的 duration參數(shù)規(guī)定效果的時(shí)長(zhǎng)。它可以取以下值:"slow"、"fast" 或毫秒。fadeTo() 方法中必需的 opacity 參數(shù)將淡入淡出效果設(shè)置為給定的不透明度(值介于 0 與 1 之間)。可選的 callback 參數(shù)是該函數(shù)完成后所執(zhí)行的函數(shù)名稱(chēng)。
查看全部 -
常用語(yǔ)法:.fadeToggle( [duration ] ,[?complete ] )
可選的?duration?參數(shù)規(guī)定效果的時(shí)長(zhǎng)。它可以取以下值:"slow"、"fast" 或毫秒。 可選的 callback 參數(shù)是 fadeToggle完成后所執(zhí)行的函數(shù)名稱(chēng)。
fadeToggle() 方法可以在 fadeIn() 與 fadeOut() 方法之間進(jìn)行切換。如果元素已淡出,則 fadeToggle() 會(huì)向元素添加淡入效果。如果元素已淡入,則 fadeToggle() 會(huì)向元素添加淡出效果。
查看全部 -
jQuery在做hide操作的時(shí)候,是會(huì)保存本身的元素的原始屬性值,再之后通過(guò)對(duì)應(yīng)的方法還原的時(shí)候還是初始值。比如一個(gè)元素的display屬性值為inline,那么隱藏再顯示時(shí),這個(gè)元素將再次顯示inline。一旦透明度 達(dá)到0,display樣式屬性將被設(shè)置為none,這個(gè)元素將不再在頁(yè)面中影響布局
查看全部 -
step:function(now,fx){
//參數(shù)step:規(guī)定每個(gè)動(dòng)畫(huà)的每一步完成之后要執(zhí)行的函數(shù)
// now:是當(dāng)前動(dòng)畫(huà)正在改變的屬性的實(shí)時(shí)值;
// fx: jQuery.fx 原型對(duì)象的一個(gè)引用,其中包含了多項(xiàng)屬性,比如
// 執(zhí)行動(dòng)畫(huà)的元素:elem;
// 動(dòng)畫(huà)正在改變的屬性:prop;
// 正在改變屬性的當(dāng)前值:now;
// 正在改變屬性的結(jié)束值:end;
// 正在改變屬性的單位:unit等查看全部 -
//上卷下拉切換
?$("button").click(function() {
??????????? $("#a1").slideToggle(3000)
??????? });
???????
?//無(wú)限循環(huán)上卷下拉切換??????
??????? $("button").click(function() {??????????? setInterval("st()",1000);
??????? });
??????? function st() {??????????? $("#a1").slideToggle(3000);
??????? }
查看全部 -
fadeOut()函數(shù)用于隱藏所有匹配的元素,并帶有淡出的過(guò)渡動(dòng)畫(huà)效果
所謂"淡出"隱藏的,元素是隱藏狀態(tài)不對(duì)作任何改變,元素是可見(jiàn)的,則將其隱藏。
.fadeOut(?[duration?],?[?complete?]?)
通過(guò)不透明度的變化來(lái)實(shí)現(xiàn)所有匹配元素的淡出效果,并在動(dòng)畫(huà)完成后可選地觸發(fā)一個(gè)回調(diào)函數(shù)。這個(gè)動(dòng)畫(huà)只調(diào)整元素的不透明度,也就是說(shuō)所有匹配的元素的高度和寬度不會(huì)發(fā)生變化。
字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時(shí)。如果提供任何其他字符串,或者這個(gè)duration參數(shù)被省略,那么默認(rèn)使用400毫秒的延時(shí)
查看全部 -
基本的操作:slideToggle();
這是最基本的操作,獲取元素的高度,使這個(gè)元素的高度發(fā)生改變,從而讓元素里的內(nèi)容往下或往上滑。
提供參數(shù):.slideToggle( [duration ] ,[?complete ] )
同樣的提供了時(shí)間、還有動(dòng)畫(huà)結(jié)束的回調(diào)。在參數(shù)對(duì)應(yīng)的時(shí)間內(nèi),元素會(huì)完成動(dòng)畫(huà),然后出發(fā)回調(diào)函數(shù)
同時(shí)也提供了時(shí)間的快速定義,字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時(shí)
slideToggle("fast")? slideToggle("slow")
注意:
display屬性值保存在jQuery的數(shù)據(jù)緩存中,所以display可以方便以后可以恢復(fù)到其初始值
當(dāng)一個(gè)隱藏動(dòng)畫(huà)后,高度值達(dá)到0的時(shí)候,display 樣式屬性被設(shè)置為none,以確保該元素不再影響頁(yè)面布局
查看全部 -
對(duì)于顯示的元素,在將其隱藏的過(guò)程中,可以對(duì)其進(jìn)行一些變化的動(dòng)畫(huà)效果。之前學(xué)過(guò)了hide方法,hide方法在顯示的過(guò)程中也可以有動(dòng)畫(huà),但 是.hide()方法將為匹配元素的寬度,高度,以及不透明度,同時(shí)進(jìn)行動(dòng)畫(huà)操作。這里將要學(xué)習(xí)一個(gè)新的顯示方法slideUp方法
最簡(jiǎn)單的使用:不帶參數(shù)
$("elem").slideUp();
這個(gè)使用的含義就是:找到元素的高度,然后采用一個(gè)下滑動(dòng)畫(huà)讓元素一直滑到隱藏,當(dāng)高度為0的時(shí)候,也就是不可見(jiàn)的時(shí),修改元素display 樣式屬性被設(shè)置為none。這樣就能確保這個(gè)元素不會(huì)影響頁(yè)面布局了
帶參數(shù):
.slideUp(?[duration?]?[,?easing?]?[,?complete?]?)
同樣可以提供一個(gè)時(shí)間,然后可以使用一種過(guò)渡使用哪種緩動(dòng)函數(shù),jQuery默認(rèn)就2種,可以通過(guò)下載插件支持。最后一個(gè)動(dòng)畫(huà)結(jié)束的回調(diào)方法。
查看全部 -
.slideDown():用滑動(dòng)動(dòng)畫(huà)顯示一個(gè)匹配元素
.slideDown()方法將給匹配元素的高度的動(dòng)畫(huà),這會(huì)導(dǎo)致頁(yè)面的下面部分滑下去,彌補(bǔ)了顯示的方式
常見(jiàn)的操作,提供一個(gè)動(dòng)畫(huà)是時(shí)間,然后傳遞一個(gè)回調(diào),用于知道動(dòng)畫(huà)是什么時(shí)候結(jié)束
.slideDown(?[duration?]?[,?complete?]?)
持續(xù)時(shí)間(duration)是以毫秒為單位的,數(shù)值越大,動(dòng)畫(huà)越慢,不是越快。字符串 'fast' 和 'slow' 分別代表200和600毫秒的延時(shí)。如果提供任何其他字符串,或者這個(gè)duration參數(shù)被省略,那么默認(rèn)使用400 毫秒的延時(shí)。
具體使用:
$("ele").slideDown(1000,?function()?{ ????//等待動(dòng)畫(huà)執(zhí)行1秒后,執(zhí)行別的動(dòng)作.... });
注意事項(xiàng):
下拉動(dòng)畫(huà)是從無(wú)到有,所以一開(kāi)始元素是需要先隱藏起來(lái)的,可以設(shè)置display:none
如 果提供回調(diào)函數(shù)參數(shù),callback會(huì)在動(dòng)畫(huà)完成的時(shí)候調(diào)用。將不同的動(dòng)畫(huà)串聯(lián)在一起按順序排列執(zhí)行是非常有用的。這個(gè)回調(diào)函數(shù)不設(shè)置任何參數(shù),但是 this會(huì)設(shè)成將要執(zhí)行動(dòng)畫(huà)的那個(gè)DOM元素,如果多個(gè)元素一起做動(dòng)畫(huà)效果,那么要非常注意,回調(diào)函數(shù)會(huì)在每一個(gè)元素執(zhí)行完動(dòng)畫(huà)后都執(zhí)行一次,而不是這組 動(dòng)畫(huà)整體才執(zhí)行一次
?
查看全部 -
基本的操作:toggle();
這是最基本的操作,處理元素顯示或者隱藏,因?yàn)椴粠?shù),所以沒(méi)有動(dòng)畫(huà)。通過(guò)改變CSS的display屬性,匹配的元素將被立即顯示或隱藏,沒(méi)有動(dòng)畫(huà)。
如果元素是最初顯示,它會(huì)被隱藏
如果隱藏的,它會(huì)顯示出來(lái)
display屬性將被儲(chǔ)存并且需要的時(shí)候可以恢復(fù)。如果一個(gè)元素的display值為inline,然后是隱藏和顯示,這個(gè)元素將再次顯示inline
提供參數(shù):.toggle( [duration ] [, complete ] )
同樣的提供了時(shí)間、還有動(dòng)畫(huà)結(jié)束的回調(diào)。在參數(shù)對(duì)應(yīng)的時(shí)間內(nèi),元素會(huì)發(fā)生顯示/隱藏的改變,在改變的過(guò)程中會(huì)把元素的高、寬、不透明度進(jìn)行一系列動(dòng)畫(huà)效果。這個(gè)元素其實(shí)就是show與hide的方法
直接定位:.toggle(display)
直接提供一個(gè)參數(shù),指定要改變的元素的最終效果
其實(shí)就是確定是使用show還是hide方法
if?(?display?===?true?)?{ ??$(?"elem"?).show(); }?else?if?(?display?===?false?)?{ ??$(?"elem"?).hide(); }
查看全部 -
方法的使用幾乎與hide是一致的,hide是讓元素顯示到隱藏,show則是相反,讓元素從隱藏到顯示
看一段代碼:使用上一致,結(jié)果相反
$('elem').hide(3000).show(3000)
讓元素執(zhí)行3秒的隱藏動(dòng)畫(huà),然后執(zhí)行3秒的顯示動(dòng)畫(huà)。
show與hide方法是非常常用的,但是一般很少會(huì)基于這2個(gè)屬性執(zhí)行動(dòng)畫(huà),大多情況下還是直接操作元素的顯示與隱藏為主
注意事項(xiàng):
show與hide方法是修改的display屬性,通過(guò)是visibility屬性布局需要通過(guò)css方法單獨(dú)設(shè)置
如果使用!important在你的樣式中,比如display: none !important,如果你希望.show()方法正常工作,必須使用.css('display', 'block !important')重寫(xiě)樣式
如果讓show與hide成為一個(gè)動(dòng)畫(huà),那么默認(rèn)執(zhí)行動(dòng)畫(huà)會(huì)改變?cè)氐母叨龋叨?,透明?/p>
?
查看全部 -
讓頁(yè)面上的元素不可見(jiàn),一般可以通過(guò)設(shè)置css的display為none屬性。但是通過(guò)css直接修改是靜態(tài)的布局,如果在代碼執(zhí)行的時(shí)候,一般是通過(guò)js控制元素的style屬性,這里jQuery提供了一個(gè)快捷的方法.hide()來(lái)達(dá)到這個(gè)效果
$elem.hide()
提供參數(shù):
.hide(?options?)
當(dāng)提供hide方法一個(gè)參數(shù)時(shí),.hide()就會(huì)成為一個(gè)動(dòng)畫(huà)方法。.hide()方法將會(huì)匹配元素的寬度,高度,以及不透明度,同時(shí)進(jìn)行動(dòng)畫(huà)操作
快捷參數(shù):
.hide("fast?/?slow")
這是一個(gè)動(dòng)畫(huà)設(shè)置的快捷方式,'fast' 和 'slow' 分別代表200和600毫秒的延時(shí),就是元素會(huì)執(zhí)行200/600毫秒的動(dòng)畫(huà)后再隱藏
注意:
jQuery在做hide操作的時(shí)候,是會(huì)保存本身的元素的原始屬性值,再之后通過(guò)對(duì)應(yīng)的方法還原的時(shí)候還是初始值。比如一個(gè)元素的display屬性值為inline,那么隱藏再顯示時(shí),這個(gè)元素將再次顯示inline。一旦透明度 達(dá)到0,display樣式屬性將被設(shè)置為none,這個(gè)元素將不再在頁(yè)面中影響布局
查看全部 -
jQuery中隱藏元素的hide方法
讓頁(yè)面上的元素不可見(jiàn),一般可以通過(guò)設(shè)置css的display為none屬性。但是通過(guò)css直接修改是靜態(tài)的布局,如果在代碼執(zhí)行的時(shí)候,一般是通過(guò)js控制元素的style屬性,這里jQuery提供了一個(gè)快捷的方法.hide()來(lái)達(dá)到這個(gè)效果
$elem.hide()
提供參數(shù):
.hide(?options?)
當(dāng)提供hide方法一個(gè)參數(shù)時(shí),.hide()就會(huì)成為一個(gè)動(dòng)畫(huà)方法。.hide()方法將會(huì)匹配元素的寬度,高度,以及不透明度,同時(shí)進(jìn)行動(dòng)畫(huà)操作
快捷參數(shù):
.hide("fast?/?slow")
這是一個(gè)動(dòng)畫(huà)設(shè)置的快捷方式,'fast' 和 'slow' 分別代表200和600毫秒的延時(shí),就是元素會(huì)執(zhí)行200/600毫秒的動(dòng)畫(huà)后再隱藏
注意:
jQuery在做hide操作的時(shí)候,是會(huì)保存本身的元素的原始屬性值,再之后通過(guò)對(duì)應(yīng)的方法還原的時(shí)候還是初始值。比如一個(gè)元素的display屬性值為inline,那么隱藏再顯示時(shí),這個(gè)元素將再次顯示inline。一旦透明度 達(dá)到0,display樣式屬性將被設(shè)置為none,這個(gè)元素將不再在頁(yè)面中影響布局
查看全部 -
get()方法,是用已經(jīng)索引值找到對(duì)應(yīng)元素
index()方法,是用元素去搜索索引值
查看全部 -
$('xxx').get(index),index從0開(kāi)始索引。也可以傳遞負(fù)值,意味倒數(shù),從-1,-2.....開(kāi)始索引。
功能類(lèi)似于$('xxx:eq(index)')
$('xxx').get(index)為js對(duì)象,可以轉(zhuǎn)換成JQ對(duì)象$($('xxx').get(index))使用.css()等JQ方法
查看全部
舉報(bào)