首页 > 文章列表 > 如何在 JavaScript 中为 DOM 元素添加属性而不设置值?

如何在 JavaScript 中为 DOM 元素添加属性而不设置值?

105 2024-11-06

如何在 JavaScript 中为 DOM 元素添加属性而不设置值?

在 JavaScript 中为 DOM 元素添加属性而不设置值

在 JavaScript 中,使用 setAttribute() 方法为 DOM 元素添加属性值是很常见的。但是,如果希望将属性添加到元素而不赋予它值,怎么办?

<p>这是期望得到的效果</p>
<pre><code>&lt;body&gt;
    &lt;div primary&gt;&lt;/div&gt;
&lt;/body&gt;</code></pre>
<p>但是<code>setAttribute('key', 'val')</code>不支持这样的写法?</p>
<pre><code>const element = document.createElement('div');
// element.setAttribute("primary"); // 这个方法只能传属性和值
document.body.append(element)</code></pre>

为了解决这个问题,可以使用 `createAttribute()` 方法创建一个没有值的属性,然后使用 `setAttributeNode()` 方法将它附加到元素上:

<p>试试这个</p>
<pre>const attr = document.createAttribute('primary');
const ele = document.createElement('div');
ele.setAttributeNode(attr);
document.body.append(ele);</pre>

来源:1730362608