У меня проблема с моим кодом, я пытаюсь закодировать кнопку, чтобы закрыть некоторые div, используя классы, но .removeClass ()
работает не так, как должен.
вот мой код:
$(".btn-fechar-top").click(function() {
$(".bg-over-lay").removeClass("show-over-lay");
$(this).parent().parent().removeClass(function (index, className) {
return (className.match (/(^|\s)show-\S+/g) || []).join(' ');
});
level_menu = 0;
})
.bg-overlay и другой элемент, который я получаю с параметром .parent () , не удаляет класс. Если я проверяю с помощью инструментов Chrome Inspector, на них, похоже, воздействует кнопка «щелчок» (выделение этого элемента, когда я нажимаю), но классы просто не меняются, они остаются прежними.
Уже пробовал использовать .remove().attr("class", "<class name>")
, но проблема та же, похоже, что они затронуты, но они не меняются.
Может кто-нибудь мне помочь?
1 ответ
Я создал базовую макетную HTML-страницу ниже, и, используя ваш код без изменений, я вижу, что событие click для .btn-fechar-top
действительно удаляет .show- наложить
на второй div. Видите ли вы какие-либо различия в вашем коде и моем? Получаете ли вы какие-либо ошибки консоли (у вас загружен jQuery?)?
<div class = "btn-fechar-top">
Test Click
</div>
<div class = "bg-over-lay show-over-lay">
Test class
</div>
$(".btn-fechar-top").click(function() {
$(".bg-over-lay").removeClass("show-over-lay");
$(this).parent().parent().removeClass(function (index, className) {
return (className.match (/(^|\s)show-\S+/g) || []).join(' ');
});
level_menu = 0;
})
Новые вопросы
jquery
jQuery — это библиотека JavaScript. Также рассмотрите возможность добавления тега JavaScript. jQuery — это популярная кросс-браузерная библиотека JavaScript, которая упрощает обход объектной модели документа (DOM), обработку событий, анимацию и взаимодействие AJAX, сводя к минимуму расхождения между браузерами. Вопрос с тегом jQuery должен быть связан с jQuery, поэтому jQuery должен использоваться рассматриваемым кодом, и в вопросе должны быть как минимум элементы, связанные с использованием jQuery.