我具有佈置在這樣的方式的div的集合:Javascript和HTML:讓div不在前臺工作onmouseover?
<div id="main">
<div id="background"></div>
<div id="foreground">
<div id="foreground_element1></div>
<div id="foreground_element2></div>
</div>
</div>
背景div有成爲前景的div後面。背景div比前景更大;前景漂浮在上面。我想要做的是每當有背景div的onmouseover動作,我想運行我的JavaScript函數。
我遇到的問題是,如果鼠標位於前景區域,即使背景div仍然存在於該空間中,它只是在前臺後面,不會發出onmouseover信號。這是一個問題。
我試圖通過將主函數放在主div上,但是當鼠標從背景div移動到前景div時,會有一個mouseout和mouseover事件同時被調用,這使得我的函數當我只想運行一次時運行兩次。而且還有更多的複雜因素,因爲前景div有嵌套的元素,這又一次觸發了一個mouseout和mouseover組合。
有沒有什麼辦法讓整個背景div的onmouseover工作?或者是否有其他觸發器我應該使用?
'onmouseenter',但要確保你想支持的瀏覽器已經實現了它 – guest
你不能讓#foreground成爲#background的孩子嗎?然後將其置於絕對位置而不是將其浮動。 – Sheraff
我不認爲onmouseenter將是一個很好的解決方案,因爲它不是與微軟以外的任何瀏覽器正式兼容。我可以嘗試讓前景成爲一個孩子,但如果可能的話,我寧願不這樣做 – user3656673