zaza41rus
@zaza41rus

Jquery в ванильный js?

из за этого кода приходится подключать доп библиотеку jquery
$('body').on('added_to_cart',function(){
		    $('.basket').css('display','block');
		});


как его переделать в ванильный ?
может онлайн преобразователь есть - квери => js

нашел конвектор
document.querySelector('body').addEventListener('added_to_cart',function(){
        document.querySelector('.basket').css('display','block');
    });


но не фурычит данное преобразование
  • Вопрос задан
  • 123 просмотра
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Поскольку речь идёт о нестандартном событии, неком "added_to_cart", важно, как это событие вызывается-создаётся.

На чистом JS надо создавать своё событие и триггерить его:
const event = new Event('added_to_cart');

// слушать это событие
elem.addEventListener('added_to_cart', function (e) { /* ... */ }, false);

// вызвать это событие
elem.dispatchEvent(event);


У jQuery собственная ламповая система событий, не связанная с общемировым JS.
Если триггерить событие в jQuery, что, скорее всего, у вас и происходит, то чистый JS его не поймает:
Причём, как видно, jQuery слушатель ловит кастомные события и jQuery, и JS. А слушатель JS – только события JS.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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