我正在使用jquery在LI上懸停/顯示DIV。當我這樣做的時候div出現了,但是直到我把我的鼠標從LI上拿下來纔沒有停下來。JQuery不斷向下和向下連續跌落
$(document).ready(function() {
$('li.menu_head').mouseover(function() {
$('div.newsadviceDrop').slideToggle('medium');
});
});
我正在使用jquery在LI上懸停/顯示DIV。當我這樣做的時候div出現了,但是直到我把我的鼠標從LI上拿下來纔沒有停下來。JQuery不斷向下和向下連續跌落
$(document).ready(function() {
$('li.menu_head').mouseover(function() {
$('div.newsadviceDrop').slideToggle('medium');
});
});
嘗試:
$(document).ready(function() {
$('li.menu_head').hover(function() {
$('div.newsadviceDrop').slideToggle('medium');
});
});
編輯:保持打開狀態,直到你的鼠標做一遍這個
$(document).ready(function() {
$('li.menu_head').mouseenter(function() {
$('div.newsadviceDrop').slideToggle('medium');
});
});
這會停止上下晃動,但是當我的鼠標停在李的上方時,元素會再次消失。 – Michael 2011-05-19 20:56:16
如果你想擁有它,當你鼠標懸停時它會打開,當你再次鼠標滑過時關閉,使用'.mouseenter'我編輯我的例子來展示這個。 – silent1mezzo 2011-05-19 20:58:43
這是否解決您的問題? – silent1mezzo 2011-05-24 11:43:02
嘗試改用的.mouseover
有一個類似「mouseover」的問題。
試試 「的mouseenter」,而不是...
或者......
只是使用jQuery的懸停()
編輯:
silent1mezzo提交了最佳/正確答案。
當鼠標移過li.menu_head
時,您將重複呼叫.slideToggle
,這就解釋了您看到連續行爲的原因。你也許可以用mouseenter
和mouseexit
的行爲替換它。
你可以在[jsfiddle](http://www.jsfiddle.net)中顯示這個嗎? – Neal 2011-05-19 20:42:22
打開時可能會出現鼠標移出現象 – mplungjan 2011-05-19 20:43:45
您是否嘗試'mouseenter'而不是'mouseover'? 'mouseover'有時會造成麻煩。 – jwueller 2011-05-19 20:44:09