Проверить поддержку события в JavaScript

129
18 декабря 2019, 16:00

Возникла такая задача, проверить существование или поддержку события в разных браузерах.

Например:

Событие wheel, оно поддерживается в IE 9+, но если его проверять через, например:

'onwheel' in document или 'onwheel' in document.documentElement или 'onwheel' in window

то всегда будет возвращаться ложь, только если onmousewheel проверять, и тогда вернется истина

или вот еще пример, с transitionend, если проверять в document или document.documentElement, то, только мазила вернет истину, а хром вернет истину, только если в window проверить (в IE 10 и 11 всегда ложь, но событие поддерживается)

Есть ли, единый, верный способ проверить, что событие будет поддерживаться?

Еще, есть события с префиксами (вебкит, моз), например

transitionend и webkitTransitionEnd

Оба работают во всех браузерах (хром, мазила, IE 10 и 11)

Можно использовать их так?

el.addEventListener("transitionend", tEnd);
el.addEventListener("webkitTransitionEnd", tEnd);

Всегда будет работать один из этих двух, transitionend

READ ALSO
Функция для изменения окончания слов в зависимости от числа в Javascript [закрыт]

Функция для изменения окончания слов в зависимости от числа в Javascript [закрыт]

Хотите улучшить этот вопрос? Update the question so it's on-topic for Stack Overflow на русском

139
JS - запись/захват системного звука

JS - запись/захват системного звука

Современные браузеры позволяют давать доступ, и соответственно вести запись:

136
VUE JS localStorage

VUE JS localStorage

Имею проект с функциями редактирования полей внутри массива объектов, сохранения, удаления, добавления новых полейХотелось бы подключить...

142