jQuery中animate動(dòng)畫(huà)第二次點(diǎn)擊事件沒(méi)反應(yīng)
用animate做點(diǎn)擊翻頁(yè)動(dòng)畫(huà)時(shí)發(fā)現(xiàn)第二次點(diǎn)擊事件動(dòng)畫(huà)沒(méi)反應(yīng),而第一次點(diǎn)擊有動(dòng)畫(huà)效果,代碼如下:
$(".page").stop().animate({top:“-300px”}, 800, 'easeInOutExpo');
第二次點(diǎn)擊事件動(dòng)畫(huà)沒(méi)反應(yīng)的原因:top是page元素頂部相與其父元素頂部的距離,第一次點(diǎn)擊后,page元素頂部已經(jīng)移動(dòng)到距其父元素頂部-300px的位置,第二次點(diǎn)擊時(shí)的并不是page在移動(dòng)后的位置繼續(xù)t移動(dòng)-300px,而是當(dāng)前的位置據(jù)其父元素頂部-300px。顯然第一次已經(jīng)移動(dòng)到top:-300px的位置,第二次的top:-300px移動(dòng)距離為0,所以沒(méi)反應(yīng)。
解決方法:
$(".page").stop().animate({top:“-=300px”}, 800, 'easeInOutExpo');
top:“-=300px”,這樣第二次點(diǎn)擊時(shí)會(huì)在第一次點(diǎn)擊后的位置上繼續(xù)移動(dòng)-300px。
如果動(dòng)畫(huà)移動(dòng)的距離是變量,就不能用“-=變量名”來(lái)寫(xiě)了:
function down() { var page_h=$(".page").height(); //687 var page_top=parseInt($(".page").css("top")); //0 var move=wrap_top+page_h; $(".page").stop().animate({top:move}, 800, 'easeInOutExpo'); };
var page_h=$(".page").height();獲取page的高度并賦值給page_h,得到的值是數(shù)值;
var page_top=parseInt($(".page").css("top"));獲取當(dāng)前page頂部到其父元素頂部的距離并賦值給page_top,(parseInt:去掉"PX");
var move=wrap_top+page_h;計(jì)算移動(dòng)距離;
這樣每次動(dòng)畫(huà)都會(huì)重新獲取“當(dāng)前page頂部到其父元素頂部的距離”。
注意:$(".page").height()的值是不帶px單位的,$(".page").css("top"))的值是帶px單位的,需要parseInt將單位px像素單位刪除才能計(jì)算。
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
- jquery中animate動(dòng)畫(huà)積累的解決方法
- js實(shí)現(xiàn)類(lèi)似jquery里animate動(dòng)畫(huà)效果的方法
- 原生js仿jquery animate動(dòng)畫(huà)效果
- jquery animate動(dòng)畫(huà)持續(xù)運(yùn)動(dòng)的實(shí)例
- jQuery動(dòng)畫(huà)animate方法使用介紹
- jquery animate 動(dòng)畫(huà)效果使用說(shuō)明
- jQuery動(dòng)畫(huà)效果animate和scrollTop結(jié)合使用實(shí)例
- JQuery動(dòng)畫(huà)animate的stop方法使用詳解
- jQuery中使用animate自定義動(dòng)畫(huà)的方法
- JQuery animate動(dòng)畫(huà)應(yīng)用示例
相關(guān)文章
基于jQuery實(shí)現(xiàn)圖片的前進(jìn)與后退功能
前進(jìn)與后退在瀏覽網(wǎng)頁(yè)的時(shí)候是比較常見(jiàn)的而且非常的實(shí)用,接下來(lái)為大家分享下使用jQuery實(shí)現(xiàn)圖片的前進(jìn)與后退,感興趣的朋友可以參考下哈2013-04-04jQuery+css實(shí)現(xiàn)圖片滾動(dòng)效果(附源碼)
圖片滾動(dòng)效果想必大家都已司空見(jiàn)慣了吧,接下來(lái)本文介紹下jQuery+CSS實(shí)現(xiàn)圖片滾動(dòng),感興趣的你可不要錯(cuò)過(guò)了哈,希望可以幫助到你2013-03-03圣誕節(jié)Merry Christmas給博客添加浪漫的下雪效果基于jquery實(shí)現(xiàn)
一年一度的圣誕節(jié)又到了,首先祝大家好運(yùn)一串串,健康一年年,平安到永遠(yuǎn)!今天就教大家如何在博客中添加紛紛揚(yáng)揚(yáng)的下雪效果。今天,你那里下雪了嗎2012-12-12Jquery 基礎(chǔ)學(xué)習(xí)筆記之文檔處理
本節(jié)讓我們繼續(xù)Jquery知識(shí)的了解:文檔處理。文檔處理主要是對(duì)HTML元素進(jìn)行一些增操作,刪除操作,復(fù)制操作,替換操作。2009-05-05jQuery簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
目前jQuery有1.x和2.x兩個(gè)主要版本,區(qū)別在于2.x移除了對(duì)古老的IE 6、7、8的支持,因此2.x的代碼更精簡(jiǎn)。選擇哪個(gè)版本主要取決于你是否想支持IE 6~8,下文給大分享jquery 簡(jiǎn)介的相關(guān)知識(shí),感興趣的朋友一起看看吧2017-07-07基于JQuery和DWR實(shí)現(xiàn)異步數(shù)據(jù)傳遞
這篇文章主要介紹了基于JQuery和DWR實(shí)現(xiàn)異步數(shù)據(jù)傳遞,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10jquery easyui中treegrid用法的簡(jiǎn)單實(shí)例
本篇文章主要是對(duì)jquery easyui中treegrid用法的簡(jiǎn)單實(shí)例進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02