鼠标滚动事件

大多数浏览器支持mousewheel事件操作,它可以在任何元素上触发,最终冒泡到document或window对象;而在Firefox中,支持的是另外一种事件——DOMMouseScroll,其中最为特殊的是它必须用addEventListener方法实现,故一般进行如下处理
       //设触发的函数为moveFunction
       if(oDiv.addEventListener) {
             //支持Firefox
            oDiv.addEventListener('DOMMouseScroll',moveFunction(),false);
        }
       //Opera、chrome、safari等主流浏览器都实现了该效果,不过存在着很大的兼容问题。
       oDiv.onmousewheel = moveFunction();

在Excel表格中,右键点击事出现的弹框,与滚轮事件发生冲突时,未来避免这个坑,我做出一个假设,当右键弹框出现的事件出现禁用滚轮事件,当右键弹框不存在的时候,解除滚轮事件。

function moveFunction(){
    if($(".cosmo-wijmenu").css("display")=="block"){ //判断右键弹框是否存在
        $('#ssvp_vp').bind('mousewheel',function(e){  
             // 右键弹框存在时,添加的滚轮事件,让右键弹框消失
             $(".cosmo-wijmenu").css("display","none");
        }
     }else{
          //当右键弹框不存在,取消滚轮事件
          $('#ssvp_vp').unbind('mousewheel')
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,526评论 1 11
  • 话不多说,直接上代码,请自测
    MrAlexLee阅读 1,508评论 0 0
  • 把百度地图引动到当前页面时,会出现这种情况:鼠标在地图上滚动时,页面也会滚动。怎么让地图动、页面不动呢?代理基于j...
    冰J冰阅读 371评论 0 0
  • 我们在日常使用中会经常使事件用到鼠标滚轮,但是当我们想自定义鼠标滚轮事件时就会遇到一些麻烦--滚轮事件的兼容性有些...
    小焲阅读 1,271评论 0 1
  • window.onmousewheel=document.onmousewheel=function() {ret...
    一路向东_1c50阅读 457评论 0 0