169 похожих чатов

Всем привет. Помогите написать простой скрипт. Нужно чтобы при клике

на кнопку класс закрытия убирался и добавлялся класс открытия и наоборот. Как это нужно реализовать ?

19 ответов

33 просмотра

Если тебе нужно что бы при первом нажатии работало одно ,а при втором другое. То это можно сделать так происходит первое нажатие ты добавляешь к переменной 1 происходит второе отнимаешь один. И добавляешь проверки: функция для первого клика срабатывает тогда когда переменная равна 0 и когда переменная равна 1 то срабатывает функция для второго клика

btn.addEventListener(“click”, function() { this.classList.toggle(“class”); })

Сергей-Железняк Автор вопроса
Kairan MR
Если тебе нужно что бы при первом нажатии работало...

У кнопки стоит класс close по дефолту. При клике добавляется класс кнопке open срабатывает анимация и также добавляется класс open и меню и тоже срабатывает анимация и наоборот если у кнопки стоит класс опен и у меню тоже при клике должно поменяться на close. То есть при клике на кнопку меняется класс close и у кнопки и у меню и если открыто меню должно и у кнопки у меня сменится класс на close

Сергей-Железняк Автор вопроса
cicada3310 ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠᅠ ᅠ ᅠ ᅠ ᅠ
btn.addEventListener(“click”, function() { this.c...

тогл не сработает поскольку при закрытии и открытии отрабатывают разные анимации и эти анимации прописаны в css поэтому при смене класса будут отрабатывать разные анимации

Сергей-Железняк Автор вопроса
cicada3310 ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠᅠ ᅠ ᅠ ᅠ ᅠ
используй close как стандартное состояние кнопки, ...

так и прописано. просто анимации при закрытии не будет если использовать тогл потому что тогл будет только добавлять или убирать класс который я пропишу а это класс откртытия

Сергей Железняк
так и прописано. просто анимации при закрытии не б...

у тебя есть два класса open/close, тебе нужно просто убрать close и установить его значение в саму кнопку и меню по дефолту, а open же сделает всё необходимое через toggle

Сергей-Железняк Автор вопроса
cicada3310 ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠᅠ ᅠ ᅠ ᅠ ᅠ
у тебя есть два класса open/close, тебе нужно прос...

Одна анимация смещает плавно кнопку вправо это класс open, анимация close возвращает кнопку на своё место тоже плавно это класс close. тогл добавит класс open и анимация плавно отработает, но при закрытии тогл просто уберёт open и кнопка резко вернётся обратно без анимации

Сергей-Железняк Автор вопроса
cicada3310 ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠ ᅠᅠ ᅠ ᅠ ᅠ ᅠ
так это уже дело не в open/close а в отсутствии tr...

класс close имеет анимация slideLeft, класс open имеет анимацию slideRight и поэтому важно заменить эти классы потому что они оба выполняют функцию смещения

Сергей Железняк
класс close имеет анимация slideLeft, класс open и...

понятно btn.addEventListener(“click”, function() { this.classList.toggle(“open”); this.classList.toggle(“close”); menu.classList.toggle(“open”); menu.classList.toggle(“close”); }); тут уже всё сработает в зависимости от приоритетов классов

Сергей-Железняк Автор вопроса

Работает, сори

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта