Javascript 鼠标滚轮事件差异 请查看以下代码: var scrollFunc=函数(e){ var-direct=0; e=e | | window.event; if(e.wheelDelta){//IE/Opera/Chrome 用户鼠标(e.wheelDelta); }否则,如果(e.detail){//Firefox 用户鼠标(e.wheelDelta); } } if(文件增补列表器){ document.addEventListener('DOMMouseScroll',scrollFunc,false); }//W3C window.onmouseheel=document.onmouseheel=scrollFunc//IE/Opera/Chrome/Safari 功能userMouse(flage){ 如果(鞭毛==3){ 警报(“firefox启动!”); }否则如果(鞭毛==-3){ 警报(“firefox关闭!”); }否则如果(鞭毛==120){ 警惕(“起来!”); }否则如果(鞭毛==-120){ 警觉(“趴下!”); } }
问题是:如果我滚动鼠标滚轮一次,它将在Firefox中发出一次警报,但在IE/Chrome/Opera中发出两次警报。我认为这是内核问题,对吗?我如何解决它?这是你的罪魁祸首:Javascript 鼠标滚轮事件差异 请查看以下代码: var scrollFunc=函数(e){ var-direct=0; e=e | | window.event; if(e.wheelDelta){//IE/Opera/Chrome 用户鼠标(e.wheelDelta); }否则,如果(e.detail){//Firefox 用户鼠标(e.wheelDelta); } } if(文件增补列表器){ document.addEventListener('DOMMouseScroll',scrollFunc,false); }//W3C window.onmouseheel=document.onmouseheel=scrollFunc//IE/Opera/Chrome/Safari 功能userMouse(flage){ 如果(鞭毛==3){ 警报(“firefox启动!”); }否则如果(鞭毛==-3){ 警报(“firefox关闭!”); }否则如果(鞭毛==120){ 警惕(“起来!”); }否则如果(鞭毛==-120){ 警觉(“趴下!”); } },javascript,jquery,mouseevent,mousewheel,Javascript,Jquery,Mouseevent,Mousewheel,问题是:如果我滚动鼠标滚轮一次,它将在Firefox中发出一次警报,但在IE/Chrome/Opera中发出两次警报。我认为这是内核问题,对吗?我如何解决它?这是你的罪魁祸首: window.onmouseheel=document.onmouseheel=scrollFunc 在IE、Chrome、Opera和Safari中,您正在处理文档和窗口的onmouseheel事件 您在Firefox中只看到一个警报,因为您只处理文档的onmouseheel事件,在这一行: if(document.
window.onmouseheel=document.onmouseheel=scrollFunc代码>
在IE、Chrome、Opera和Safari中,您正在处理文档和窗口的onmouseheel
事件
您在Firefox中只看到一个警报,因为您只处理文档的onmouseheel
事件,在这一行:
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}
你为什么要解决这个问题?你想要什么样的解决方案?如果你想解除该函数的影响,为什么不呢?为什么在你不使用的情况下它会被标记为jQuery?很抱歉,我离开了20分钟。我已经使用了jQuery-1.8.1.js,只是我没有编写它。我想解决的是鼠标滚轮滚动一次,事件执行一次。你能听滚动事件而不是鼠标滚轮事件吗?小提琴:
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}