Я удивлен, что не могу найти подобный вопрос там. У меня есть элемент значка, который мне нужно изменить, когда я нажимаю на вкладку раздела. Есть 6 разделов. У меня это работает, чтобы добавить класс, попытался правильно использовать удаление класса, чтобы он не продолжал добавлять класс на класс. Я просто не могу понять это правильно.
Вот мой код:
<script type="text/javascript">
$(document).ready(function(){
$('.changeImage').click(function()
{var rel = $(this).attr('rel');
$('.image').addClass("image"+rel);
$(this).siblings().removeClass("image"+rel);
return false;
})
});
</script>
Я также пробовал это:
$('.image').addClass("image"+rel);
$(this).next().find('.image').removeClass("image"+rel);
Это тоже не работает.
HTML-части (не включая весь окружающий код):
<div><a href="#" class="changeImage" rel="1"><img class="thumb" src="images/image1_thumb.png" /></a></div>
Пример CSS:
.image1 {
background:url(images/fast.png) no-repeat;
}
.image2 {background:url(images/peep.png) no-repeat;
}
Есть ли более эффективный способ обмена bg-изображениями? Является ли switchClass опцией?
Я ценю это.
Я настроил его так, что когда вы нажимаете на ссылку на раздел, он имеет определенное значение в rel, которое добавляется в класс "image" + rel
Поскольку у меня есть 6 различных ссылок, которые будут соответствовать классам css image1, image2, image3 и т. Д., Я хочу общий оператор jquery, который говорит, что добавьте класс, по которому щелкнули, но удалите его ИЛИ переключите его с классом следующего ссылка, по которой щелкают.
Я могу заставить его добавить несколько классов, но не удаляю должным образом старые, добавляя следующие при переходе по другим ссылкам.