2015-01-10 48 views
0

HI,首先,我已經閱讀了很多關於此的帖子,但似乎沒有人能夠工作。我有一個由jQuery製作的內容「滑塊」。我對此很感興趣,但是在1小時後它工作。當您嘗試按下使下一個「幻燈片」快速出現幾次的按鈕時,就會出現問題。阻止排隊的jQuery動畫

這裏是我的「代碼」是如何工作的:

首先,我設置了一個名爲「伯爵」變量是在1000

我有4周內容的div。我隱藏其中3個。當用戶點擊「下一步」按鈕時,變量檢查值是否爲1000.如果這是真的,那麼我將不透明度設置爲第一個div爲0,隱藏div和淡入另一個(div div)。然後我設置變量「count」two 1001並重置div 1的不透明度(因爲它隱藏,所以不會出現)。

如果在第一時間,變量不是1000,則檢查它的值是否爲1001等等。你明白了嗎?

這有點棘手,但它的工作原理。 所有正常工作,但當你快速點擊「下一步」按鈕幾次,所有的動畫搞砸了。 如果有人能告訴我如何解決這個問題,我會非常感激。

如果你想看到的「滑」到這裏:http://www.sinvenderse.com/hg/index.htm

,並滾動到頁面的結束。 你可以看到,如果你慢慢地點擊滑塊按鈕,它會很好地工作,但是,當你試圖快速地擊中它們時,所有的東西都會混亂起來。

好了,對不起,我的英語不好(我是阿根廷),我想告訴你,我已經嘗試了一切:

finish(); 
stop(); 
clearQueue(); 

你可以看到用Ctrl + U或右的源代碼點擊Chrome上的檢查元素。

如果你知道解決的辦法,我給你一個虛擬的擁抱(:

回答

2

試着隱藏所有幻燈片除了當前的每一步有兩個幻燈片與display: block在某一時刻

if (count == 1000){ 
    $('.th-1').animate({opacity: 0},600,function(){ 
     $('.think-content:not(.th-2)').hide(); 
     $('.th-2').fadeIn(600); 
    }); 
    ... 
+0

謝謝,我使用jQuery選擇器修復它((:animated); 'if(count == 1000 &&!$('.th-1,.th-2,.th-3,.th-4' ).is(':animated')' –

+0

很好,雖然bxslider有很好的自定義動畫方法,比如'onSlideBefore'等。 –

+0

是的,我用它作爲上面的滑塊,但是我很害怕,因爲它內容不是圖像。無論如何,謝謝你的回覆! –