Переключение имени класса не работает

#javascript #html #css

#javascript #HTML #css

Вопрос:

Я пытаюсь создать переключатель на JavaScript, который изменяет класс div при нажатии на другой div.

Вот мой код:

 function toggleStart() {    
    var startToggle = document.getElementById('menustart').className;
    if (startToggle == "startmenu") {
        startToggle = 'startclick';
    } else {
        startToggle = 'startmenu';
    }
}
  

В принципе, я хочу добавить эту функцию в свойство onclick div. Я делаю что-то не так?

Комментарии:

1. Это не сработает, потому что строки в JS имеют тип значения, а не ссылочный тип.

Ответ №1:

Я полагаю, вы поражены переназначением класса.

Вы просто меняете значение startToggle , а не значение элемента напрямую. Для этого вам придется переназначить имя класса элементу, чтобы оно вступило в силу.

Добавьте эту строку кода после else блока:

 document.getElementById('menustart').className = startToggle;
  

Комментарии:

1. рад, что помог вам 😉