2010-09-28 60 views
1

我試圖在鼠標上顯示一個模式,並在鼠標上關閉模式。 我給div上課,並把它叫做.hover。mouseover mouseout不能正常工作

但它像閃爍。 打開關閉打開關閉。

爲什麼這種行爲?

連鼠標也在裏面關閉。

$('.divclass').hover(function(){ 
    dialog.open() 
}, 
function(){ 
    dialog.close() 
}); 

我使用鼠標和mouseneter ..相同的行爲像blinking..open關閉... 爲什麼?任何suggesion

+0

我想問題是,一旦對話框打開,你間接的鼠標了..不要以爲你可以解決這個問題。但讓我問一個問題:如果對話框是模態的,那麼爲什麼你希望它在mouseout上消失呢? – poke 2010-09-28 21:21:32

+0

我不想使用dialog..just任何箱子內容很少,.any建議。 – zod 2010-09-28 21:41:59

回答

6

我建議你嘗試

$('.divclass').mouseenter(function() { 
    //dialog open 
}); 

$('.divclass').mouseleave(function() { 
    //dialog close 
}); 
0

請嘗試下面的代碼,如果它工作

$(」。divclass')。懸停( 函數(){ dialog.open()
}, 功能(){ 對話.close() } );

有一個hoverIntent插件,這是非常有益的嘗試,如果可能的 http://cherne.net/brian/resources/jquery.hoverIntent.html

+0

對話框的鼠標懸停成爲初始div塊的mouseoout,這就是您的對話框正在關閉的原因。 – kobe 2010-09-28 21:25:05

1

在CSS指定對話框:pointer-events: none;
這可以防止對話框從干擾懸停行動。