开发者社区> leonwuv> 正文

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

简介: 当鼠标或者键盘触发某一事件时,在JavaScript中,我们可以为这个事件设置相应的动作。当然浏览器本身甚至是操作系统也会有对某一事件的默认动作,这样除了由于我们设置了自己定义句柄而产生的动作之外,还会有默认的动作发生。 通过事件属性取消默认动作 DOM的Event对象,通过其preventDefault()方法来取消默认动作。在IE下,则是将event的r
+关注继续查看

当鼠标或者键盘触发某一事件时,在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了。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
28480 0
QML学习笔记(一)-防止鼠标穿透事件
1.防止鼠标穿透 MouseArea{ anchors.fill: parent; onClicked: {}; onReleased: {}; onPressed: {}; } 2.允许穿透,控件增加enable属性
1576 0
使用异步事件在后台进行计算并报告进度
演练:实现一个使用后台操作的窗体 Visual Studio 2010     其他版本     此主题尚未评级 - 评价此主题     如果某项操作需要很长的时间才能完成,并且不希望用户界面 (UI) 停止响应或“挂起”,则可以使用 BackgroundWorker 类在另一个线程中执行这种操作。
837 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
20361 0
Qt [GC9-7]:控制台基本设置及增加鼠标右键菜单和键盘事件
Qt [GC9-7]:控制台基本设置及增加鼠标右键菜单和键盘事件
54 0
+关注
leonwuv
Code is my life!
61
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载