smidl
@smidl
WordPress-разработчик

Как избежать конфликта onclick="..." со своим обработчиком клика?

Собственно есть элемент:

<span onclick="LikeBtn.vote(1, 0, event);" class="lb-a" >


Я хочу повесить на него свой обработчик клика:

$(document).on('click','.lb-a', function(){
    alert('нажатие!');
});


Но не выходит. Мой обработчик не видит клика и не срабатывает. Насколько я понял, тут идет конфликт с инлайновым onclick="LikeBtn.vote(1, 0, event);" class="lb-a" >.

Как заставить работать оба обработчика клика?
  • Вопрос задан
  • 344 просмотра
Решения вопроса 1
space2pacman
@space2pacman
Просто царь.
Может в onclick добавить еще одну функцию ?
var getAtt = document.querySelector('lb-a').getAttribute('onclick');
document.querySelector('.lb-a').setAttribute('onclick', getAtt + 'function();');


https://jsfiddle.net/9msmy0jL/1/

Дополню свой ответ. Если применить setAttribute то то, что было до этого в onClick удалится. Надо будет взять то, что там и добавить в переменную для последующего использования. Тогда все работает корректно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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