在前幾天的專案中,場景值如下:
1.動態生成列表,列表高度不固定
2.外面父元素的屬性設定為overflow:auto;
3.滑鼠移動到列—li中的a上,出現選擇列表,滑鼠在列表上,列表不消失
4.當滑鼠放置到出現的列表上時,再滾動滑輪,因為出現的列表為是根據標籤a的位置來進行定位的,所以滾動的時a頁面在滾動,但列表位置雖然沒變,但與原來a標籤相符合的位置卻變了
因為父元素overflow的存在,無法使用hover狀態,超出的部分會隱藏掉或者會出現跳動的狀態。所以就用了如果在a標籤上就阻止頁面的滾動事件,**如下。
//阻止瀏覽器事件
function
disabledmousewheel
() //取消阻止瀏覽器事件
function
canceldismousewheel
()
function
scrollfunc
(evt) else
return
false;
}
跳動狀態如下圖
如有疑問,歡迎交流提問
五,事件物件 阻止瀏覽器預設動作 阻止事件冒泡
在jquery裡邊 bind click function evt click function evt bind mouseover f1 function f1 evt 事件物件 就使用紅色的evt即可,在jquery框架內部有做瀏覽器相容處理。阻止瀏覽器預設動作 阻止事件冒泡 dom2級瀏覽器...
JS停止事件冒泡 阻止瀏覽器預設行為
一 停止事件冒泡 如果提供了事件物件,則這是乙個非ie瀏覽器 if e e.stoppropagation 因此它支援w3c的stoppropagation 方法 e.stoppropagation else 否則,我們需要使用ie的方式來取消事件冒泡 window.event.cancelbubb...
JS阻止事件冒泡以及瀏覽器預設行為
e的相容 function fn e firefox裡的event跟ie裡的不同,ie裡的是全域性變數,隨時可用。firefox裡的要用引數引導才能用,是執行時的臨時變數 在ie opera中是window.event,在firefox中是event。而事件的物件,在ie中是window.event...