Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.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 我想知道我是否可以使用OR运算符或其他任何东西声明两个事件列表器,以便在一行中加载相同的函数_Javascript_Addeventlistener - Fatal编程技术网

Javascript 我想知道我是否可以使用OR运算符或其他任何东西声明两个事件列表器,以便在一行中加载相同的函数

Javascript 我想知道我是否可以使用OR运算符或其他任何东西声明两个事件列表器,以便在一行中加载相同的函数,javascript,addeventlistener,Javascript,Addeventlistener,我现在用的是什么 window.addEventListener("touchend", myFunction); window.addEventListener("load", myFunction); 我想知道一种把它加在一行的方法,因为要么不起作用 window.addEventListener("load"||"touchend", myFunction); 根据这一点,它是不允许的类型是一个区分大小写的字符串,表示要侦听的事件类型。不能在其中定义多个条件 但您可以对同一函数应用

我现在用的是什么

window.addEventListener("touchend", myFunction);
window.addEventListener("load", myFunction);

我想知道一种把它加在一行的方法,因为要么不起作用

window.addEventListener("load"||"touchend", myFunction);

根据这一点,它是不允许的

类型
是一个区分大小写的字符串,表示要侦听的事件类型。不能在其中定义多个条件

但您可以对同一函数应用多个侦听器,如下所示:

function addMultipleListeners(eventNames) {
    var events = eventNames.split(' ');
    var eventsLength = events.length;
    var i;
    for (i = 0; i < eventsLength; i++) {
        window.addEventListener(events[i], myFunction);
    }
}

addMultipleListeners('mousemove touchmove');
函数addMultipleListener(事件名称){
var events=eventNames.split(“”);
var eventsLength=events.length;
var i;
对于(i=0;i

我希望它能帮助您。

据我所知,在vanilla JavaScript中,每个事件类型都需要自己的事件侦听器。不幸的是,您不能像在jQuery和其他框架中那样将多个事件传递给单个侦听器@mplungjan谢谢你,这很好用!或者只是
['load','touchend'].forEach(函数(e){window.addEventListener(e,myFunction);})