ReaL_HarDCorE
@ReaL_HarDCorE

Что производительнее: addEventListener или onclick?

Всем привет! У меня задача навешать листенеры клика на огромное количество элементов, делегирование и jQuery использовать нельзя по некоторым причинам. addEventListener работает, но при большом количестве листенеров страница будет подвисать. Решит ли проблему явно указанный атрибут в элементе "onclick", или он работает аналогично первому варианту?
Я имею ввиду не так:
element.onclick = function () { }
А так:
<div onclick="do_smth();"></div>
Спасибо!
  • Вопрос задан
  • 2834 просмотра
Пригласить эксперта
Ответы на вопрос 2
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
на огромное количество элементов

Вешайте на родителя, а исходный элемент получайте из события.
Ответ написан
Комментировать
@M-ka
frontend присматривающийся к ror
В отношении скорости хз, не заморачивался, а вообще у меня был написан мегакомбайн по работе с addEventListener, который умел как ставить, так и удалять, так еще ставить единожды, если один и тот же элемент и прежний обработчик....
Почти все ставлю через него, все кейапы, блюры, клики. Но некоторые клики пишу при сборке кнопок (когда надо независимый модуль без привязки к установщику событий). Каждый элемент имеет минимум 2 события, а для мобильных устройств еще больше, т.к. добавляются тачи... Замечу, что именно добавляются, а не подменяются на тачи.
Отлично работает, тормозов нет, значит проблема в архитектуре установщика.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы