Упрощение фрагмента кода, который переключает классы - PullRequest
0 голосов
/ 09 июня 2019

У меня есть следующий фрагмент кода, который помещен в функцию рендеринга. Функция запускается несколько раз в секунду.

if ($play.hasClass(playClass)){
   $play.removeClass("playing paused").addClass(playClass);

}else{
   $play.removeClass("playing paused").addClass(playClass);
}

Я хочу убедиться, что код выполняется только в том случае, если playClass не существует в элементе $play. если это так. Удаляет все классы и добавляет текущую версию playClass. Это то, что делает toggleClass, но разница в том, что мой код запускается несколько раз в секунду, и класс продолжает менять класс.

Чего я хочу добиться, так это того, что если значение playClass не существует в $play, то поменяйте его на предыдущее и делайте это только тогда, когда оно отличается. Не проверяйте это каждый раз.

Значение $play может быть либо playing, либо paused.

Этот код выполняет работу правильно, я просто хочу выяснить, есть ли более эффективный и профессиональный способ сделать это.

Заранее спасибо.

1 Ответ

0 голосов
/ 09 июня 2019

Вам не нужно никаких «если», потому что они делают то же самое.
просто:

$play.removeClass("playing paused").addClass(playClass);
...