Jquery не работает .hasClass

SEO_87
На сайте с 05.08.2008
Offline
104
1994

.hasClass не работает с классами, которые появились после загрузки страницы:


$('.open_filter').toggleClass('active');
if ($('.open_filter').hasClass('active') === true) {
....
} else {
....
}

Как это исправить?

R
На сайте с 19.01.2016
Offline
4
#1

Возможно код срабатывает до появления этих классов. Консоль что-то пишет?

Ragnarok
На сайте с 25.06.2010
Offline
239
#2
SEO_87:
появились после загрузки страницы:

если ajax, то там нужно вешать на on ajax load вместо onload или что-то типа того

//TODO: перестать откладывать на потом
SEO_87
На сайте с 05.08.2008
Offline
104
#3
Ravager_:
Возможно код срабатывает до появления этих классов. Консоль что-то пишет?

Там нужно что-то вроде .on('click' я думаю

---------- Добавлено 06.07.2016 в 23:36 ----------

Ragnarok:
если ajax, то там нужно вешать на on ajax load вместо onload или что-то типа того

Нет, это не ajax

I2
На сайте с 07.03.2015
Offline
38
#4

По этому куску ничего не понятно

Может у вас сейчас в разметке висит активный класс, а когда скрипт отрабатывает, он убирает его и в условие не попадаем..

Качественная верстка PSD макетов (/ru/forum/974524)
doctorpc
На сайте с 12.07.2009
Offline
112
#5
SEO_87:
Как это исправить?

Выполнять


$('.open_filter').toggleClass('active');
if ($('.open_filter').hasClass('active') === true) {
....
} else {
....
}

после появления классов у элементов

Aisamiery
На сайте с 12.04.2015
Offline
319
#6
SEO_87:
.hasClass не работает с классами, которые появились после загрузки страницы:

$('.open_filter').toggleClass('active');
if ($('.open_filter').hasClass('active') === true) {
....
} else {
....
}

Как это исправить?

Ваш код полностью рабочий https://jsfiddle.net/5rqpn0pz/

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
SEO_87
На сайте с 05.08.2008
Offline
104
#7

Да, проблема была в другом. Спасибо всем ответившим:)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий