Привет всем, возник вопрос, можно ли сделать на jquery функцию такого рода, которая при клике на нужный блок делает его активным, а все остальные другие неактивными. И при повторном нажатии на активный блок также убрать его активность. С первой частью я разобрался, сделал функцию такого рода
$(".block").click(function(){
$(".block").each(function(){ $(".block").removeClass("active"); });
$(this).addClass("active");
});
Как сделать так,чтобы при нажатии на активный блок он делался неактивным? Я пробовал сделать кнопку, при нажатии на которую убирается класс "active", но может это реально сделать в пределах одной функции,не используя сторонних кнопок, дабы код был более лаконичный
Если активность блока у вас маркируется наличием класса active
, тогда используйте примитивы:
$().addClass("active")
$().removeClass("active")
$().toggleClass("active")
В целом, мне кажется, что можно просто по клику переключать класс активности:
$(".block").click(function(){
// На нажатом элементе .block переключаем состояние активности
$(this).toggleClass("active");
// Для всех элементов .block, кроме того, на который нажали, уберем активность
$(".block").not(this).removeClass("active");
});
Не знаю, насколько это изящно, смотрите сами
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Верстаю таблицу div-ами, возник вопрос, в чем морфологическое отличие column от row?
Что если html-верстку сайта сделать только с svg изображениями, вместо стандартных img или png, не будет никаких проблем? Кроссбраузерность и прочее?
В Java давно, а в Java EE совсем недавноРазбираюсь в азах, так сказать
Есть абсолютно спозиционированная менюшкаМенюшка имеет определенные размеры => если много текста, то должен появиться у нее скрол, но если...