sin*_*nan 4 html javascript dom polymer
我正在尝试生成这样的节点:
<div layout horizontal></div>
Run Code Online (Sandbox Code Playgroud)
使用DOM API.
我正在尝试这样的事情:
var d = document.createElement("div");
d.setAttribute(...);
Run Code Online (Sandbox Code Playgroud)
但从来没有真正设法生成我想要的东西.任何想法如何做到这一点?
谢谢.
小智 7
你问题的主题反映了这里的基本混淆.没有"无价值的属性"这样的东西.HTML中只有一种语法方便,可以编写没有特定值的属性,只要属性的存在意味着什么,无论其价值如何.
所以,你可以写<input required>或<input required='true'>或<input required='false'>或<input required='notrequired'>并且这将意味着同样的事情(这是输入的需要).
当您尝试"打印"时,用"无价值"属性"打印",负责"打印"的人可以选择"对你好"并表示没有值的属性,而不是显示空字符串.但是,这并不会改变属性确实具有空字符串值的事实,可以通过elt.getAttribute直接获取和检查属性值轻松地看到.
例如,如果我创建一个新的div,然后将其内部HTML设置为<input required="">,那么某些环境(如Chrome devtools)将显示该元素<input required>而不是<input required="">.换句话说,它只是在路上和路上的语法糖.
一旦我创建了一个具有"无值"属性的元素,这实际上是一个空字符串,或许我可以通过将属性值设置为真正使其无价值null?不.elt.setAttribute('required', null)只是将属性值设置为字符串"null".同样的undefined.
请注意,DOM规范指定了specifiedon Attr对象的属性.然而,据我所知,这似乎并没有被使用,在这个意义上说,通过创建一个属性document.createAttribute总是被specified设置为true,通过解析HTML创建属性,如x.innerHTML = '<input required>';总是被specified设置为true,等,并specified为标记只读,所以没有办法检查将它设置为假的效果无论如何.
无论如何,你的目标是什么?为什么你认为你需要这样做?
| 归档时间: |
|
| 查看次数: |
1471 次 |
| 最近记录: |