2011-06-26 125 views
1

因此,如果您在懸停事件上附加了某些功能,則在頁面加載過程中鼠標已經位於懸停區域內並且未移動時,它將不會觸發。您實際上必須將鼠標移動一點才能觸發事件。jQuery懸停事件未在懸停時觸發

實施例:

  • 移動鼠標懸停效果區域
  • 擊鼠標用斧頭
  • 重新加載與F5的頁面

=>懸停功能不會激發:(

爲什麼?

有沒有修復?

+2

這裏貼的一些相關代碼不會傷害我們的感受;) –

+0

ax? AFAIK,這是正常的行爲。它造成什麼問題? –

回答

1

這是預期的功能,懸停只是「mouseOver」和「mouseOut」的組合,所以如果您的光標在頁面加載時位於元素上方,它從未在技術上移過元素。不幸的是,如果沒有鼠標的移動,JavaScript就無法確定鼠標的位置或當前結束的元素。

+1

鏈接和CSS:懸停不表現這種方式 –

+0

CSS和JavaScript是不同的動物,jquerys「懸停」只是最接近的CSS「懸停」,可能與JavaScript – Trey

+0

那麼,有[document.elementFromPoint]( https://developer.mozilla.org/en/DOM/document.elementFromPoint)。現在你只需要鼠標座標。從負載事件也許,如果這個事件甚至有clientX,clientY? –