Как объединить getElementById с другим именем идентификатора

Можно ли комбинировать getElementById с другим именем идентификатора? Как этого достичь?

function onOpen(){
    var x1 = document.getElementById("header");
    var x2 = document.getElementById("menu");
    var x3 = document.getElementById("program");
    x1.style.filter = "blur(5px)"
    x2.style.filter = "blur(5px)"
    x3.style.filter = "blur(5px)"
}

Что ты имеешь в виду ? Привести пример. Вопрос слишком широк, чтобы ответить на него сейчас.

Ionut Eugen 31.05.2019 03:10

@IonutEugen он хочет, чтобы ему не приходилось настраивать размытие каждого элемента построчно, он хочет иметь возможность делать это все сразу или в меньшей базе кода. вместо Line by Line, как показано. Это моя точка зрения.

juanvan 31.05.2019 03:12
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
3
135
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Идентификаторы уникальны, поэтому, насколько я знаю, вы не можете выбрать более одного за раз. Однако вы можете выбрать несколько классов с помощью document.getElementsByClass и указать один класс для всех из них.

Понимаю. Теперь я понял. общее качество

dontbannedmeagain 31.05.2019 03:16
Ответ принят как подходящий

Вы можете использовать querySelectorAll, а затем повторить, используя NodeList.forEach()

function onOpen(){
  const els = document.querySelectorAll("#header, #menu, #program");
  els.forEach(el => el.style.filter = "blur(5px)");
}

onOpen();
<div id = "header">TEST</div>
<div id = "menu">TEST</div>
<div id = "program">TEST</div>

Или, если вы хотите загрязнять HTML с дополнительным классом, вы можете использовать

function onOpen(){
  const els = document.querySelectorAll(".onOpenBlur");
  els.forEach(el => el.style.filter = "blur(5px)");
}

onOpen();
<div class = "onOpenBlur" id = "header">TEST</div>
<div class = "onOpenBlur" id = "menu">TEST</div>
<div class = "onOpenBlur" id = "program">TEST</div>

таким образом, в будущем все, что вам нужно сделать, это добавить один и тот же класс к любому количеству элементов, вместо того, чтобы вкладывать новый идентификатор в JS...
Выберите тот, который лучше всего подходит. Или вы даже можете использовать оба: '#header, #menu, .onOpenBlur'

https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEach
https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll

Немного другой подход

Другая идея состоит в том, чтобы просто добавить класс к body и позволить CSS делать магию:

function toggleOpen(){
  document.documentElement.classList.toggle('is-open')
}

toggleOpen();
.is-open .on-open-blur {
  filter: blur(5px);
}
<div class = "on-open-blur" id = "header">TEST</div>
<div class = "on-open-blur" id = "menu">TEST</div>
<div class = "on-open-blur" id = "program">TEST</div>

О, я забыл об этом. Плохо, я предлагаю еще немного документации по HTML dom.

Ionut Eugen 31.05.2019 03:19

TQ за это, я собирался переименовать все названия моего класса, когда вы пришли. Еще раз спасибо

dontbannedmeagain 31.05.2019 03:39

Другие вопросы по теме