Страницы

Поиск по вопросам

вторник, 2 апреля 2019 г.

JS: удалить атрибуты в конкретном <>

Изображение содержит атрибут class, который подставляется CMS.

Подскажите способ удаления атрибута class="fill-content replaced-content" чтобы тег выглядел вот так:
Мой первый способ:
var imgRemoveClass = document.querySelectorAll("img"); if (imgRemoveClass.hasAttribute("class")) { imgRemoveClass.removeAttribute("class"); }
выдает ошибку:
Uncaught TypeError: imgRemoveClass.hasAttribute is not a function
Мой второй способ:
var imgRemoveClass = document.querySelector("img"); if (imgRemoveClass.hasAttribute("class")) { imgRemoveClass.removeAttribute("class"); }
в консоли срабатывет, но при загрузке со страницы:
Uncaught TypeError: imgRemoveClass.hasAttribute is not a function


Ответ

в первом случае imgRemoveClass - это массив. Чтобы удалить класс, необходимо указать индекс элемента в этом массиве. Например, imgRemoveClass[0].removeAttribute("class"); Либо же циклом.
Во втором случае, сложно сказать. Возможно скрипт загружается раньше, чем разметка. Также, может быть, что где-то буква e, a и тп. написана в кириллической раскладке Попробуйте обратиться через id, например.

Комментариев нет:

Отправить комментарий