Как удалить атрибут элемента при помощи JS?

193
18 апреля 2018, 06:13

Как убрать все атрибуты тега style

<style scope="scope">

То бишь scope="scope"

Answer 1

С помощью removeAttribute

styleTag.removeAttribute('scope'); 
 
console.log(styleTag.outerHTML);
<style id="styleTag" scope="scope"></style>

Answer 2

scope="scope" — аттрибут элемента. Чтобы удалить все аттрибуты, не нужен jQuery:

while (elem.attributes.length > 0)
    elem.removeAttribute(elem.attributes[0].name);

Чтобы проитерироваться по всем элементам документа:

var all = document.getElementsByTagName("*");
for (var i=0, max=all.length; i < max; i++) {
     // ваши действия
}

Или с jQuery:

$(document.documentElement).children().each(function(index, element) {
    // ваши действия
});

Всё вместе:

var all = document.getElementsByTagName("*");
for (var i=0, max=all.length; i < max; i++) {
    var elem = all[i];
    while (elem.attributes.length > 0)
        elem.removeAttribute("scope");
}

Как отмечено в комментариях, можно и сразу выбрать только нужные элементы (только те, что содержат нужный аттрибут)

jQuery:

$("[scope]").each(function(index, element) {
    element.removeAttribute("scope");
});
READ ALSO
Выполнить скрипт на стороне сервера [требует правки]

Выполнить скрипт на стороне сервера [требует правки]

Можно ли данный скрипт, выполнить на стороне сервера, либо как нибудь изменить его под php?

155
Как правильно добавить класс к тегу

Как правильно добавить класс к тегу

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

181
Ошибка загрузки изображений Fancybox

Ошибка загрузки изображений Fancybox

Пытаюсь выводить увеличенные изображения через fancyboxДелаю это таким кодом:

165
Раскрыть аккордеон меню

Раскрыть аккордеон меню

Все работает, добавляет open для родителя и active для активногоНо, если перейти внутрь, например /category/type/good - уже type не определяется, соответственно...

135