我把jQuery的mouseenter
和mouseleave
事件與append
的調用結合起來,引起了一個有趣的問題。我的目標是在鼠標進入某個東西時顯示額外的內容,然後在鼠標離開時將其移除。這與在StackExchange上將鼠標懸停在此處時發生的情況非常相似。序列是:jQuery mouseenter,mouseleave和append的奇怪組合
- 在
mouseenter
,創建內容,並且經由.offset
和.append
它由鼠標下的元件進行定位。 - 在
mouseleave
中,從屏幕上刪除該內容。
我操作的元素是img
,我使用的是jQuery 1.6.2。問題在於,.append
以某種方式觸發mouseleave
,緊接着是.mouseenter
,無限無盡。它對被添加的內容顯示爲一種奇怪的閃爍效果,因爲它被反覆刪除並重新添加。在jsFiddle上看到一個例子here。爲什麼會發生這種情況,我該如何解決?
編輯:想通了。 D'哦。添加的內容出現在鼠標下。
沒有ü嘗試使用鼠標懸停及移出? –
我*認爲*這些類型的東西通常附加到身體,絕對定位和屏幕外。鼠標懸停只是將左側/頂部更改爲元素下方。它已經加載並且對dom的侵入性比添加/刪除更少。 – Marc