«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему кнопка «Показать/Скрыть» двойным щелчком работает только при втором вызове?

Почему кнопка «Показать/Скрыть» двойным щелчком работает только при втором вызове?

Опубликовано 8 ноября 2024 г.
Просматривать:166

Why Does a Double-Click Show/Hide Button Only Function on Second Invocation?

Зачем дважды щелкнуть кнопку «Показать/скрыть» при первом использовании?

На веб-странице кнопка предназначена для отображения или скрытия элемент, но для его первоначального вызова требуется двойной щелчок. При проверке код кнопки выглядит следующим образом:

function showhidemenu() {
  var x = document.getElementById("menu");
  if (x.style.display === "none") {
    x.style.display = "block";
  } else {
    x.style.display = "none";
  }
}

Проблема связана с исходным состоянием элемента с идентификатором «меню». По умолчанию для свойства display элемента в CSS установлено значение «none». При первом вызове функции showhidemenu() выполняется следующая проверка:

if (x.style.display === "none")

Эта проверка принимает значение true, поскольку начальное свойство отображения элемента равно «none». Следовательно, для отображения элемента установлено значение «блокировать». Однако при следующем щелчке для свойства отображения устанавливается значение «none», как и ожидалось.

Чтобы решить эту проблему, для начального свойства отображения элемента следует установить значение «пусто» вместо «none». Это гарантирует, что проверка функции будет выполнена правильно при первом щелчке.

if (x.style.display === "none" || x.style.display === "")

Благодаря этой модификации кнопка будет отображать элемент при первом нажатии, как и предполагалось.

Заявление о выпуске Эта статья перепечатана по адресу: 1729206136. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3