2014-05-02 36 views
0

我懷疑這很簡單,但我沒有找到答案很幸運。當基於元素將在哪裏觸發一個jQuery

我想使用jQuery緩慢地移除一個元素,當用戶將鼠標懸停在它上面時,然後在用戶將鼠標從元素WAS的位置移開時將其放回。現在,刪除元素的行爲立即觸發放回事件,而我不希望它發生。有沒有簡單的方法來做到這一點與jQuery?

$("#id").hover(function(){ 
    $(this).hide("slow"); 
    }); 

    $("#id").mouseleave(function(){ 
    $('#id1').show("slow"); 
    }); 

我敢肯定,你可以使用CSS來使其不可見,並從常規文檔流程,等等等等刪除它,但我不知道是否有沒有更簡單的方法。

+2

我建議你放棄隱藏/顯示,而是動畫不透明度降低到零。現在用戶不會看到它,但它仍然存在鼠標事件。請記住,翻滾在移動設備上的效果不佳。 – spender

+0

@spender code added。不幸的是,它不能只是看不見,我需要它下面的東西向上移動 – ebrts

+0

看看.stop() –

回答

0

您可以切換不透明度和獲得相同的結果您所渴望的:

$("#id").mouseenter(function(){ 
$(this).animate({opacity:0}); 
}); 

$("#id").mouseleave(function(){ 
$(this).animate({opacity:1}); 
}); 
相關問題