在javascript中,动态创建dom元素并设置属性时,有时需要只设置属性名而不赋值,类似于html中的
。setattribute('key', 'val') 方法需要键值对,无法直接实现此目标。解决方法是利用document.createAttribute() 方法创建一个属性节点,再用setAttributeNode() 方法将其添加到元素中。 这允许我们只指定属性名,无需提供属性值。
以下代码演示了如何创建仅包含primary属性(无属性值)的
元素:
const attr = document.createAttribute('primary'); const div = document.createElement('div'); div.setAttributeNode(attr); document.body.appendChild(div);
这段代码先创建一个名为primary的属性节点,然后将其添加到新创建的
元素中,最后将
添加到body中。 这样就成功创建了一个带有primary属性但没有属性值的
元素。