我在我的身體的元素,我蒙山動畫此功能:jQuery的動畫觸發點擊
$(function(){
$("#telefonofisso").click(function(){
if ($("#telefonofisso").hasClass('negative')) {
$(this).delay(400).animate({right:'10px'},1000).addClass('positive').removeClass('negative')
}
});
})
但我不能讓它恢復到原來的位置right:-210px
如果我點擊它另一個時間。我試着用下面的函數:
$(function(){
$("#telefonofisso").click(function(){
if ($("#telefonofisso").hasClass('positive')) {
(this).delay(400).animate({right:'-210px'},1000).addClass('negative').removeClass('positive')
}
});
})
但在此之前我點擊第二次,如果我點擊它,這個功能激活,所以我的元素,從right:-210px
開始,去right:10px
比返回right:-210px
只是一個單擊。
我該如何解決這個問題,爲什麼它會這樣做?我無法理解它這樣做的原因。因爲理論上觸發是點擊,而第二個功能應該只在第二次點擊時才起作用,對吧?
使用兩個條件組合點擊功能的處理程序。由於您有兩個點擊處理程序,它們正在同時執行。 –
是的,我可以看到它們是同時執行的,但對我來說沒什麼意義,因爲第二個只能激活,如果我的元素具有「積極」級別,並且它可以只是「積極」或「一次性「。所以兩者中的一個不應該工作。 –
'addClass('positive')'在動畫結束之前執行。在動畫回調函數中使用它。我將演示如果您創建JSfiddle的問題 –