2012-08-31 102 views
1

我做既jQuery和CSS代碼這裏有兩個懸停效果:如何使jQuery的懸停像CSS懸停?

http://jsfiddle.net/UFSvN/3/

有jQuery的懸停和CSS懸停之間的差異。 jquery懸停,如果你將鼠標移動到盒子上很短的時間並快速離開盒子,它將運行鼠標輸入和鼠標離開動畫,並且將完成它們,而鼠標不會在鼠標移到盒子後面,輸入動畫結尾...

但對於css懸停,如果您將鼠標懸停在該框上,懸停效果將運行鼠標離開動畫,只要將鼠標懸停在該框上直到鼠標懸停在動畫結尾/已完成!

我該如何讓jQuery的懸停像CSS懸停?! 我不想讓整個動畫完全跑出來,當我將鼠標移到剛剛接近混戰的第二個框上時!

回答

2

使用.stop()停止當前正在運行的動畫。

實施例:http://jsfiddle.net/UFSvN/4/

在小提琴,我在 '真' 作爲參數傳遞。這將清除動畫隊列。請閱讀jQuery文檔;還有很多其他很酷的東西可以告訴你如何去做,比如傳遞第二個參數來跳轉到動畫的結尾。

+0

謝謝,但如果我在我的代碼中進行了一些更改,該怎麼辦?像這樣: http://jsfiddle.net/UFSvN/9/ ​​ 然後.stop(真)不會爲這種情況工作.. –

+0

@ Pay4m你在這種情況下期待它做什麼...播放整個動畫對我來說似乎是最自然的事情。 – verdesmarald

+0

將鼠標在jquery框上移動3次,然後快速離開。那麼動畫將連續運行3次..我不希望發生這種情況..所以我認爲解決方案是允許動畫,如果只有鼠標仍然在框中。當它結束時,停止動畫序列。 –