您的位置:首页 > 其它

关于鼠标滚轮事件的禁止方法

2016-10-20 09:59 253 查看
当鼠标或者键盘触发某一事件时,在JavaScript中,我们可以为这个事件设置相应的动作。当然浏览器本身甚至是操作系统也会有对某一事件的默认动作,这样除了由于我们设置了自己定义句柄而产生的动作之外,还会有默认的动作发生。

通过事件属性取消默认动作

DOM的Event对象,通过其preventDefault()方法来取消默认动作。在IE下,则是将event的returnValue属性设置为false来阻止浏览器执行与事件相关的默认动作。

为了保证阻止浏览器默认动作的发生,我们可以即通过事件句柄返回值来实现,又考虑事件属性。例如 下面代码,取消滚轮事件的默认动作。

functiondisabledMouseWheel() {
if(document.addEventListener) {
document.addEventListener('DOMMouseScroll', scrollFunc, false);
}//W3C
window.onmousewheel = document.onmousewheel = scrollFunc;//IE/Opera/Chrome
}
functionscrollFunc(evt) {
evt = evt || window.event;
if(evt.preventDefault) {
// Firefox
evt.preventDefault();
evt.stopPropagation();
} else{
// IE
evt.cancelBubble=true;
evt.returnValue = false;
}
returnfalse;
}
window.onload=disabledMouseWheel;


在事件句柄中,除了完成自己定义的动作之外,想要阻止默认动作,可以在句柄最后加上阻止默认动作的语句就OK了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息