Как переписать класс DOM элемента?

Ссылка скопирована
18 апреля 2026 1 ответ

Здрасте. У меня есть 10 element. Как переписать класс для каждого element так чтобы старый класс удалился и вместо него появился active? Мне нужно чтобы это сработало как textContent (если я удалю свой скрипт по переписыванию классов, то классы переписались. Как это сделать)?

HTML

<div class="block">         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div>         <div class="element"></div> </div>

<div class="block"> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> <div class="element"></div> </div>

JS

const elements = document.querySelectorAll("element");

const elements = document.querySelectorAll("element");

Дополнительно:

JS выполняется на стороне клиента. Он не меняет файлы на сервере (потому что насколько я понял из вашего вопроса, вам нужно именно это)
Если хотите менять классы в самом html файле то в vs code выделите слово element, нажпмите shift+ctrl+l вроде и напишите новый класс
Ну либо используйте сборщики + шаблонизаторы, чтобы сильно не страдать когда надо что-то поменять в коде

Ответы:

Для начала, используемый вами селектор не найдет элементов по тегу "element". Для поиска по классу используйте ".element".

А принудительно переписать классы для всех элементов удовлетворяющих селектору ".element", можно например так:

const element = document.querySelectorAll('.element') element.forEach(el=>el.className = 'active')

const element = document.querySelectorAll('.element') element.forEach(el=>el.className = 'active')

  • Да точку забыл. Но извините это не то что мне нужно. Мне нужно чтобы этот класс переписался в самом файле. И если я удалю скрипт то этот класс сохранился.
  • Наверное только вручную можно переписывать в файле класс для каждого элемента.
  • zeretkk, Про это пока не знаю, надо будет изучить.
  • DZHAMBULAT-SAMOUCHKA, можно использовать что-то в стиле Gulp или иные инструменты, чтобы перебирать файлы в необходимый вам вид перед публикацией. Однако, не совсем понимаю смысл вашей идеи.
  • zeretkk, Спасибо за помощь. Если вы не понимаете моего вопроса, то и дальнейших моих объяснений не поймёте. Я все таки думаю что решение в Gulp но не уверен.
Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Юрий Linux Ответ

Для переписания класса DOM элемента в PHP можно воспользоваться методом setAttribute класса DOMElement. Этот метод позволяет установить значение атрибута элемента по его имени.

Пример:

// Создаем новый объект DOMDocument
$doc = new DOMDocument();
 
// Загружаем HTML код в объект DOMDocument
$doc-&gt;loadHTML('<p id="myParagraph">Hello, World!</p>');
 
// Находим элемент с id="myParagraph"
$paragraph = $doc-&gt;getElementById('myParagraph');
 
// Переписываем класс элемента
$paragraph-&gt;setAttribute('class', 'newClass');
 
// Выводим измененный HTML код
echo $doc-&gt;saveHTML();

// Создаем новый объект DOMDocument $doc = new DOMDocument(); // Загружаем HTML код в объект DOMDocument $doc-&gt;loadHTML('<p id="myParagraph">Hello, World!</p>'); // Находим элемент с id="myParagraph" $paragraph = $doc-&gt;getElementById('myParagraph'); // Переписываем класс элемента $paragraph-&gt;setAttribute('class', 'newClass'); // Выводим измененный HTML код echo $doc-&gt;saveHTML();

В данном примере мы загружаем HTML код в объект DOMDocument, находим элемент с id="myParagraph", и с помощью метода setAttribute устанавливаем новый класс "newClass" для этого элемента. Затем мы выводим измененный HTML код с помощью метода saveHTML.

Таким образом, используя метод setAttribute, можно легко переписать класс DOM элемента в PHP.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно