Лучшая альтернатива для метода jQuery toggle ()?

javascript jquery

4977 просмотра

4 ответа

3465 Репутация автора

jQuery устарел метод toggle (). Это был способ легко переключать классы. При поиске в стеке потока я нашел несколько других методов для выполнения той же задачи ( Альтернатива методу .toggle () jQuery, который поддерживает eventData? ). Какой фрагмент кода jQuery должен быть идеальным для переключения классов для этой разметки?

Спасибо

Разметка:

<a href="#">Toggle Class</a>
<div class="a"></div>

CSS:

.a{
background: #f2f2f2;
}
.b{
background: #ededed;
}
Автор: Rajender Joshi Источник Размещён: 27.03.2013 03:47

Ответы (4)


9 плюса

87984 Репутация автора

Решение

В этом случае просто используйте .toggleClass().

$("a").click(function(){
    $("div").toggleClass("a b");
});
Автор: Kevin B Размещён: 27.03.2013 03:48

0 плюса

8298 Репутация автора

http://api.jquery.com/toggleClass/

toggleClass() кажется, что вы хотите / нужно.

Автор: Flater Размещён: 27.03.2013 03:49

0 плюса

15 Репутация автора

Если у вас есть только 1 класс для переключения (включение и удаление), ниже должно работать нормально:

$("a").click(function(){
        $(this).toggleClass('class1', '');
});
Автор: damian Размещён: 21.03.2014 09:39

0 плюса

2456 Репутация автора

toggle()функция, используемая для переключения вида. У которого есть проблемы с производительностью. (Буду рекомендовать не использовать)

toggleClass() используется для переключения класса.

Дело 1

<div id='mydiv' class="class1"></div>

$('#mydiv').toggleClass('class1 class2');

output: <div id='mydiv' class="class2"></div>

случай: 2

<div id='mydiv' class="class2"></div>

$('#mydiv').toggleClass('class1 class2');

output: <div id='mydiv' class="class1"></div>

случай: 3

<div id='mydiv' class="class1 class2 class3"></div>

$('#mydiv').toggleClass('class1 class2');

output: <div id='mydiv' class="class3"></div>
Автор: Arun Pratap Singh Размещён: 11.04.2014 06:36
Вопросы из категории :
32x32