@arttstyle
web-макака

Как еще можно написать этот скрипт?

switchbutton.addEventListener("click",function(){
  if(toggle == 0) {
       document.querySelector(".text").innerHTML = "zamena";
   toggle = 1;
} else {
   document.querySelector(".text").innerHTML = "test";
   toggle = 0;
}
});

допустим есть блок с текстом: TEST
я хочу менять текст по кнопке на другой, допустим : zamena
написал вот такой скрипт. работает но что-то мне подсказывает что он кривой и это можно сделать более изящно.
как?
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
@DimaIs
Как вариант:
() => {
    const replacedText = toggle ? text1 : text2;
    toggle = !toggle;
    document.querySelector(anySelector).innerHtml = replacedText;
}

Но стоит учитывать, что тут у нас toggle - boolean переменная
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
lugindev
@lugindev
Ну во-первых, каждый раз делать querySelector плохая идея.



Еще вариант:
Ответ написан
v3shin
@v3shin
Веб-шаман
Можно закатать оба варианта текста в span'ы, обернуть их в .textParent и делать так:
document.querySelector(".text").closest('.textParent').classList.toggle('.textParent__toggled');

И с помощью css отображать/скрывать span'ы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы