首先setattribute
是元素的未定义属性,因为它区分大小写setAttribute
,当然 是可用的。
其次,您根本不需要使用setAttribute
。你可以简单地修改id
属性来达到同样的效果:
var el = document.createElement('div'), // your element
staticPart = 'myUniqId', // your static part of a unique id
i = 0; // your uniqueness
el.id = staticPart + i; // assign unique id to the element
// el.setAttribute('id', staticPart + i); // does the same, but more verbose
// Let's check if it worked:
el.getAttribute('id'); // "myUniqId0"
el.id; // "myUniqId0"
三、你在哪里看到的
setattribute 中的值只能是文字
规范说setAttribute
接受两个参数,name
类型value
为DOMstring。你可以传递任何你想要的值。请注意,它将被转换为字符串:
el.id = {a: 'b'};
el.id; // "[object Object]"
请参阅http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-F68F082和https://developer.mozilla.org/en-US/docs/DOM/element.setAttribute