2014-06-23 52 views
2

我試圖在鼠標觸及站點上的動態元素時觸發事件,無論鼠標是否在移動。當鼠標不移動到動態元素上時mouseover不起作用

我面臨的問題是,我沒有設法觸發事件,除非鼠標在動態元素上移動

這裏有一個小提琴在那裏你可以很容易地通過剛剛離開鼠標靜止在動態方元素的未來位置重現:

http://jsfiddle.net/rHZbt/1/

我想火甚至與下面的代碼:

$(document).on('mouseenter', '#demo', function(){ 
    alert("Entering in demo"); 
}); 

我知道有一種方法通過跟蹤鼠標和元素位置,但聽起來更像是一個黑客或替代和複雜化這樣做的方式而不是解決問題的好方法。 當許多物體到位時(10-40),該解決方案聽起來像是機器的許多工作。

的問題發生在:

  • Safari瀏覽器
  • IE
  • 歌劇

在Firefox似乎正常工作。

+1

我不遵循這個問題似乎在這裏很好地工作 – Dale

+0

@戴爾是否讓鼠標靜止? – Alvaro

+0

完全同意@Dale。你的代碼工作 – Satpal

回答

0

$(document).on('mouseout', '#demo', function(){ alert("Leaving demo"); });

通過這個而離開鼠標靜止的,你可以得到警報。

+0

它不適用於Chrome,Opera,Safari或IE。當元素動態添加到DOM中時,或者當鼠標靜止時其位置發生變化時,與「mouseenter」同樣的問題。 – Alvaro

相關問題