您的位置:首页 > 编程语言

滚轮事件的防冒泡、阻止默认行为的代码(效果是:只让当前div滚动,连当前文档都不滚动的效果)

2015-10-19 15:33 561 查看
//用firefox变量表示火狐代理
var firefox = navigator.userAgent.indexOf('Firefox') != -1;
function MouseWheel(e){//阻止事件冒泡和默认行为的完整兼容性代码
e = e||window.event;
if (e.stopPropagation) {//这是取消冒泡
e.stopPropagation();
} else{
e.cancelBubble = true;
};
if (e.preventDefault) {//这是取消默认行为,要弄清楚取消默认行为和冒泡不是一回事
e.preventDefault();
} else{
e.returnValue = false;
};
}
var con = document.getElementById('content');//要在content内部滚动,而页面不受影响,所以这里获取要滚动的对象
//如果是ff就绑定DOMMouseScroll事件,其他浏览器就用onmousewheel事件触发
firefox ? con.addEventListener('DOMMouseScroll',MouseWheel,false) : (con.onmousewheel = MouseWheel);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: