卡不加奇诺君 2019-04-26 23:02 采纳率: 0%
浏览 394

用鼠标滚轮事件报错?

我照着网上的教程写了一段代码,想做出鼠标滚轮向下或者向上滑动页面就自动滑动到相应位置,但是一直报错
运行时报错

var availablePageHeight = window.innerHeight;//获取浏览器可用页面高度
//通过id获取四部分


var page1 = document.getElementById("page1");
var page2 = document.getElementById("page2");
var page3 = document.getElementById("page3");
var page4 = document.getElementById("page4");
//将四个页面放入一个数组(方便批量修改)
var pages = [page1, page2, page3, page4];

for (i = 0; i < pages.length; i++) {
    pages[i].style.height = availablePageHeight + "px";
}

var delta;
function judge(event) {
    event = event || window.event;
    if (event.wheelDelta) {  //判断浏览器IE,谷歌滑轮事件             
        if (event.wheelDelta > 0) { //当滑轮向上滚动时
            delta = 0;
        }
        if (event.wheelDelta < 0) { //当滑轮向下滚动时
            delta = 1;
        }
    }
    else if (event.detail) {  //Firefox滑轮事件
        if (event.detail < 0) { //当滑轮向上滚动时
            delta = 0;
        }
        if (event.detail > 0) { //当滑轮向下滚动时
            delta = 1;
        }
    }
}

function downWheel() {
    window.scrollTo({
        top: availablePageHeight,
        behavior: "smooth"
    })
}
function topWheel() {
    window.scrollTo({
        top: 0,
        behavior: "smooth"
    })
}

function autoWheel() {  //自动滚动页面
    judge(event);
    if (delta = 1) downWheel();
    else if (delta = 0) topWheel();
}

if (document.addEventListener) {    //判断是否为火狐
    document.addEventListener("DOMMouseScroll", autoWheel(event));
}
window.onmousewheel = document.onmousewheel = autoWheel(event);

顺便问一下event = event || window.event;是什么意思

  • 写回答

1条回答 默认 最新

  • ChoneyLove 2019-04-27 16:40
    关注

    短个参数event,加上这个参数试试来

    function autoWheel(event) {  //自动滚动页面
        judge(event);
        if (delta = 1) downWheel();
        else if (delta = 0) topWheel();
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)