2010-05-21 109 views
0

我創建了一個div,當它被點擊時它會執行一個jQuery腳本,但是我遇到的問題是在動畫中有一個鏈接,當你點擊鏈接時鏈接是執行以及動畫,但不會讓動畫結束。有沒有辦法讓知道Jquery,當它執行的鏈接等待動畫結束,然後去鏈接?鏈接不讓動畫結束JQUERY

+0

是的,如果你使用['jQuery.animate'](http://api.jquery.com/animate/)或類似的方法,你應該可以使用結束動畫回調來做到這一點。基本上,你會使用鏈接上的jQuery.click處理程序。在處理程序中,設置一個標誌(clickedFooLink = true)。然後,從處理程序返回false(因此不會採取立即導航的默認操作)。最後,在最後的動畫回調中,如果clickedFooLink爲true,則可以導航。發佈您的源代碼以獲取更多幫助。 – 2010-05-21 04:09:42

回答

0

您需要處理鏈接的click事件並記錄點擊,然後return false以防止導航。

然後,當動畫完成時,檢查您是否記錄了點擊,如果是,則設置爲location.href

但是,我不建議這樣做。如果一個用戶點擊了一個鏈接,他顯然想要去那個頁面,他對你的動畫不感興趣。

0

您可以使用回調參數有關的動畫功能:

$('a').click(function(){ 
    $(this).animate({}, 500, function() { location.href = $(this).attr('href') }); 
    return false; 
}); 

鏈接被點擊時,這將執行動畫將轉至該網址,一旦完成動畫。