JavaScript метод document.createAttribute()
Определение и применение
JavaScript метод document.createAttribute() создает новый атрибут с указанным именем (объект
Attr) и возвращает его.
Преобразование имени в нижний регистр выполняется для HTML-документа. В XML регистр сохраняется.
Поддержка браузерами
Спецификация: dom.spec.whatwg
Поддерживается во всех основных браузерах с 2016 года.
Отдельные значения (1) поддерживаются не везде — смотрите таблицу.
| Возможность | Компьютеры | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
createAttribute | 1 | 12 | 44 Версия 44 выпущена в 2016 г. Версия 1 выпущена в 2004 г. — Удалено в 44 Примечание MDN (англ.) The parameter was not converted to its lowercase variant. | ≤12.1 | 1 | 18 | 44 Версия 44 выпущена в 2016 г. Версия 4 выпущена в 2011 г. — Удалено в 44 Примечание MDN (англ.) The parameter was not converted to its lowercase variant. | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
| Emoji and more Unicode in element and attribute names and namespace prefix (valid names match HTML parser) | 143 | 143 | 149 | 127 | 143 | 149 | 94 | 30.0 | 143 | |||
поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31
JavaScript синтаксис
const attribute = document.createAttribute(name);
Спецификация
Значения параметров
| Параметр | Описание |
|---|---|
name |
Строковое значение, содержащее имя атрибута. В HTML-документе строка преобразуется в нижний регистр. Обязательный параметр. |
Исключения
| Тип исключения | Описание |
|---|---|
InvalidCharacterError |
Возникает при недопустимом имени атрибута. По DOM Standard имя не должно быть пустым или содержать
ASCII-пробелы, U+0000, /, = или >. В старых реализациях могут
действовать более строгие ограничения XML-имён.
|
Пример использования
Создание атрибута style и добавление его элементу
Нажмите , затем кнопку в результате: созданный узел атрибута style получает значение color:green и добавляется абзацу, поэтому текст становится зелёным.
index.html
<button data-migration-click-0="">Нажми меня</button>
<p>Мой элемент</p>
main.js
function myFunc() {
const elem = document.querySelector('p'),
attr = document.createAttribute('style')
attr.value = 'color:green'
elem.setAttributeNode(attr)
}
// Обработчики кнопок перенесены из HTML для запуска с CSP без inline-скриптов.
document.querySelector('[data-migration-click-0]').addEventListener('click', function () {
myFunc()
})
Нажмите , чтобы запустить пример.
В этом примере с использованием метода
addEventListener()
при нажатии на кнопку (HTML элемент
<button>) вызываем функцию myFunc(), которая с использованием JavaScript метода document.querySelector()
выбирает первый элемент
<p>
в документе и инициализируем переменную этим значением (объект Element). Кроме того, с использованием
JavaScript метода document.createAttribute() создаем атрибут с именем
style.
После этого мы с помощью свойства value задаем значение созданному нами атрибуту и с помощью JavaScript
метода Element.setAttributeNode() устанавливаем наш атрибут элементу
<p>.