2012-12-11 66 views
1

我是新來的jquery,我不太瞭解它,但我需要它,因爲我正在構建一個模板...這是情況,我有一個div,我想滑入頁面(從外,頂部)當我點擊鏈接,當我點擊其他地方在頁面上滑出......這是我有:如何停止onclick jquery animate?

var tmpl_name = '<?php echo $this->template ?>'; 
jQuery(document).ready(function() { 

    jQuery('#link').click(function() { 
    var topy = jQuery('#div'); 
     topy.delay(0).animate({ 
     top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : 10 
    },500, 'easeInOutCirc', function() {jQuery(this);}); 
    }); 

}); 

...它工作得很好,當我點擊到友情鏈接DIV幻燈片,但我不知道如何實現,當我點擊其他地方頁上滑出DIV,我嘗試添加:

jQuery('body').click(function() { 
    var topy = jQuery('#div'); 
     topy.delay(0).animate({ 
     top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : -500 
    },1000, 'easeInOutCirc', function() {jQuery(this);}); 
    }); 

...但問題時,我點擊鏈接在d中滑動iv,div進出頁面(可能因爲鏈接也在body中,代碼的第二部分也會影響它。

感謝您的時間...最好的問候

回答

0

.stop()功能可以在您的呼叫開始在年底鏈接以及停止任何動畫。

$("#element").stop().bounce().stop();

2

嘗試:

jQuery(document).ready(function() { 

    jQuery('#link').click(function(e) { 
    e.preventDefault(); 
    var topy = jQuery('#div'); 
     topy.delay(0).animate({ 
     top: parseInt(topy.css('top')) == 0 ? -topy.outerWidth() : 10 
    },500, 'easeInOutCirc', function() {jQuery(this);}); 
    }); 

}); 

殺事件傳播到文檔對象

相關問題