Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 添加鼠标滚轮事件侦听器错误_Javascript_Function_Events_Addeventlistener_Mousewheel - Fatal编程技术网

Javascript 添加鼠标滚轮事件侦听器错误

Javascript 添加鼠标滚轮事件侦听器错误,javascript,function,events,addeventlistener,mousewheel,Javascript,Function,Events,Addeventlistener,Mousewheel,问题是: 我有一个函数,它应该不返回任何内容。。。它被称为: function zoom(event){ alert("wheel delta : "+event.wheelDelta); return false; } 单击我的元素后,我尝试通过以下方式在鼠标滚轮上添加事件侦听器: element.addEventListener("mousewheel",zoom,false); 元素是一个svg标记。但是,从未调用函数zoom,我只收到以下消息: TypeError:

问题是:

我有一个函数,它应该不返回任何内容。。。它被称为:

function zoom(event){
    alert("wheel delta : "+event.wheelDelta);
    return false;
}
单击我的元素后,我尝试通过以下方式在鼠标滚轮上添加事件侦听器:

element.addEventListener("mousewheel",zoom,false);
元素是一个svg标记。但是,从未调用函数zoom,我只收到以下消息:

TypeError: Argument 2 of EventTarget.addEventListener is not an object.
我做错了什么

谢谢你的帮助:)

编辑:以下是全部代码:

function ZoomMain(){
var zoom = 0;
var main;
var clicks = 0;
this.click = function(event,svg){
    if(svg){
        switch(clicks%2){
            case 0 :
                main = svg;
                main.addEventListener("mousewheel",zoom,false);
                clicks++;
            break;
            case 1 :
                main.removeEventListener("mousewheel",zoom,false);
                clicks++;
            break;
        }
    }else{
        alert("ERROR");
    }
};

function zoom(event){
    alert("wheel delta : "+event.wheelDelta);
    return false;
}
}
试一试

如果
缩放
不是
功能
可能是范围问题。添加所有相关代码以获得更多帮助

PS:这不是问题的解决方案,而是调试的解决方案!如果您对开发人员工具没有问题,请使用该工具查看
zoom
是否具有有效值

将click事件处理程序和绑定方式粘贴到click事件处理程序中。还显示相对于这些对象定义缩放的位置


愚蠢的问题,你重新声明了缩放

我编辑了缩放功能结果是警报。。。因此,typeof不被视为函数…检查我提出的上一个请求,添加代码,包括您定义的
zoom
,在哪里绑定
单击
以及如何在
单击
事件处理程序中绑定
鼠标滚轮
。尝试在工作流中包含JSLINT以避免愚蠢的错误占用我们的时间。您能否显示如何使用“ZoomMain”以及在哪里附加
此。单击
单击事件处理程序。您的计划简介也很感谢:)这将需要数百行…:/真的是。。。龙……:/(聊天邀请)
if(typeof zoom === "function"){
    element.addEventListener("mousewheel",zoom,false);
}
else{
    alert(zoom);
}
on click on my element, i try to add an event listener on mousewheel