Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как перенести prevent default после поверки на тэг и класс???

Nikolay Kondaurov Мастер (2484), закрыт 5 лет назад
Как перенести prevent default после поверки на тэг и класс????
addEventListener('click', function(e) {
e.preventDefault();
if (e.target.localName=='a' && e.target.className=='left') {
// мой код
}
e.stopPropagation();
}, false);
Лучший ответ
Leo Khan Гуру (3827) 5 лет назад
куда перенести?
Nikolay KondaurovМастер (2484) 5 лет назад
ты действительно хочешь помочь или пришел снова потролиться?
Остальные ответы
Сергей Жаков Мудрец (16208) 5 лет назад
если правильно понял

if (e.target.localName=='a' && e.target.classList.contains('left' ) ) { // лучше classList.contains использовать
// включай внутри скобок что нужно
...
// e.stopPropagation();
// и return делай true или false по требованию выход из события
}

Всплытие и перехват - https://learn.javascript.ru/event-bubbling
classList - https://developer.mozilla.org/ru/docs/Web/API/Element/classList
Nikolay KondaurovМастер (2484) 5 лет назад
спасибо большое я уже замучился с ней, буду разбираться щас
Nikolay KondaurovМастер (2484) 5 лет назад
4 сутки с ней мучаюсь, не могу ничего сделать уже весь гугл красный все ссылки по 30 раз передергал, более подробно объясню что я хочу:
вот на фото видно, что на странице много ссылок, я вешаю глобальный клик на все ссылки и делаю 1 обработчик. по 1 нужные мне динамические ссылки которые создались вследствие запроса, по ним клик работает, по верхним ссылкам остальным клик не работает, значит условие отсекание верное, но и не работают и сами ссылки они заблокированы, нужно как то остановить событие prevent default после поверки и перевести его на тэг и класс
Скажи, а какой замечательный учебник так учит javascript-у?
Сергей ЖаковМудрец (16208) 5 лет назад
addEventListener('click', function(e) {

if (e.target.localName=='a' && e.target.className=='left') {
// свой кол если нужно
return false; // после не сработает ссылки на left
}

},false);

ps
// return false ;
// равен 2 событиям
// e.preventDefault();
// e.stopPropagation();
Похожие вопросы