基于mouseout和mouseover等類似事件的冒泡問題解決方法
更新時間:2013年11月18日 10:05:08 作者:
這篇文章主要介紹了關于mouseout和mouseover等類似事件的冒泡問題解決方法。需要的朋友可以過來參考下,希望對大家有所幫助
最近寫點東西,比較鬧心,一個彈出層,上邊有其他元素,本意是鼠標離開彈出層時,執(zhí)行一些動作,但在實際應用中,鼠標離開彈出層中的元素時,也會激活這些動作。試了各瀏覽器的停止事件冒泡的方法,均無效。
還是咱們javaeye里高人眾多,在一個哥們博客中發(fā)現(xiàn)了如下代碼:
復制代碼 代碼如下:
function isMouseLeaveOrEnter(e, handler) {
if (e.type != 'mouseout' && e.type != 'mouseover') return false;
var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement;
while (reltg && reltg != handler)
reltg = reltg.parentNode;
return (reltg != handler);
}
這個方法是判斷,當前元素是不是要執(zhí)行mouseout事件的元素,這樣就可以避免上述問題。
您可能感興趣的文章:
- 兼容ie和firefox的鼠標經(jīng)過(onmouseover和onmouseout)實現(xiàn)--簡短版
- javascript mouseover、mouseout停止事件冒泡的解決方案
- js ondocumentready onmouseover onclick onmouseout 樣式
- 實現(xiàn)onmouseover和onmouseout應用于RadioButtonList或CheckBoxList控件上
- onmouseover和onmouseout的一些問題思考
- 經(jīng)過綁定元素時會多次觸發(fā)mouseover和mouseout事件
- javascript中mouseover、mouseout使用詳解
相關文章
javascript中onmouse事件在div中失效問題的解決方法
我們預期只有當鼠標從div中移開的時候才會觸發(fā)onmouseout事件,可事實上,當我們移到div中的元素時,例如:本例中的a標簽時,就會觸發(fā) onmousout事件2012-01-01javascript的解析執(zhí)行順序在各個瀏覽器中的不同
javascript是一種解釋型語言,它的執(zhí)行是自上而下的。由于各個瀏覽器對它的理解有所差異,所以我們有必要深入理解js的執(zhí)行順序2014-03-03javascript驗證手機號和實現(xiàn)星號(*)代替實例
在我們日常開發(fā)中經(jīng)常要驗證客戶輸入的手機號是否正確,有的時候還需要將中間的四位或者前幾位用星號(*)代替,那該如何實現(xiàn)呢?下面跟著小編一起來看看。2016-08-08