firefox怎么监听鼠标滚轮滚动,这个兼容性问题怎么解决?

要实现的效果是在ie,chrome,firefox下监听滚轮触发事件。
源码:

window.onscroll=function(e){  
var e =e || window.event;       
var scrolltop=document.documentElement.scrollTop||document.body.scrollTop;

var box = $('#qa-head');
if(document.body.scrollTop >= 400){
    box.addClass('fixed-head');
}else{
    box.removeClass('fixed-head');
}
}

模拟onscroll效果

  • 这个闭包中的尾巴上的括号是什么意思?
  • vue2怎么安装mint-ui?
  • ES6, 规定子类继承父类, 写constructor 时, 必须要调用super, 这样有没有可能带来副作用 ?
  • 如何在网页中加入加载页面
  • <script src="url"> 中的url的"//"是不是相当于"http://"?
  • js 上传多张图片到七牛时怎么把每一张自定义的图片名(key)传进Qiniu.uploader 里面??
  • if(document.addEventListener){ 
    document.addEventListener('DOMMouseScroll',scrollFunc,false); 
    }
    window.onmousewheel=document.onmousewheel=scrollFunc;//IE/Opera/Chrome
    var scrollFunc=function(e){
        e=e || window.event;
        var t1=document.getElementById("qa-head");
        if(t1.detail >= 400){
            t1.addClass('fixed-head');
            console.log('firefox');
        }else{
            t1.removeClass('fixed-head');
            console.log('firefox lll');
        }
    }

    但是火狐模拟onscroll的这段代码控制台都没有输出,是什么原因哪里错了?

  • reactjs+redux+babel+es6项目在android自带浏览器正常渲染问题
  • javascript 反混淆工具
  • 关于Express的cookie-parser
  • 动态传值给require加载vue组件?
  • ternjs 不支持 Object 对象的方法吗?
  • JQ 点击隐藏显示
  • 2 Solutions collect form web for “firefox怎么监听鼠标滚轮滚动,这个兼容性问题怎么解决?”

    函数表达式声明的函数在执行到函数体之前都是不可用的

    最大的問題應該是你先使用了函數才聲明吧….

    var scrollFun c= function(e){
      e = e || window.event
      var t1 = document.getElementById("qa-head")
      if(t1.detail >= 400) {
        t1.addClass('fixed-head')
        console.log('firefox')
      } else {
        t1.removeClass('fixed-head')
        console.log('firefox lll')
      }
    }
    
    window.onmousewheel = document.onmousewheel = scrollFunc; // IE/Opera/Chrome
    
    if(document.addEventListener) { 
      document.addEventListener('DOMMouseScroll',scrollFunc,false)
    }
    
    
    .