В POJS вы добавляете одного слушателя за раз. Не принято добавлять одного и того же слушателя для двух разных событий в одном элементе. Вы можете написать свою собственную маленькую функцию, например ::1001*
/* Add one or more listeners to an element
** @param {DOMElement} element - DOM element to add listeners to
** @param {string} eventNames - space separated list of event names, e.g. 'click change'
** @param {Function} listener - function to attach for each event as a listener
*/
function addListenerMulti(element, eventNames, listener) {
var events = eventNames.split(' ');
for (var i=0, iLen=events.length; i<iLen; i++) {
element.addEventListener(events[i], listener, false);
}
}
addListenerMulti(window, 'mousemove touchmove', function(){…});
Надеюсь, это показывает концепцию.
Редактировать 2016-02-25
Комментарий Далгарда заставил меня вернуться к этому. Я полагаю, что добавление одного и того же прослушивателя для нескольких событий на одном элементе является более распространенным в настоящее время для охвата различных используемых типов интерфейсов, и ответ Исаака предлагает хорошее использование встроенных методов для сокращения кода (хотя самого кода меньше , не обязательно бонус). Расширенные функции ECMAScript 2015 со стрелками дают:
function addListenerMulti(el, s, fn) {
s.split(' ').forEach(e => el.addEventListener(e, fn, false));
}
Подобная стратегия может добавить одного и того же слушателя к нескольким элементам, но необходимость сделать это может быть индикатором для делегирования события.