gue*_*314 13 javascript dom google-chrome nodelist chromium
在提供关于问题属性的错误答案之后,我检查了元素的返回并找到了一种方法..item()Node.childNodes__proto__childNodesformforEach
所述forEach的方法Node.childNodes中没有的说明书中记载NodeList,在Methods以MDN,或接口节点列表,并没有出现在被提及迭代使用的forEach方法的节点列表或链接到该问题页; 虽然它出现在Chromium 50中.
该方法仅适用于相对较新版本的Chrome/Chromium吗?如果是,是否记录在案?
有没有关于forEach()方法的文件Node.childNodes?
document.querySelector("form").addEventListener("submit", function(e) {
e.preventDefault();
var form = e.target;
form.childNodes.forEach(function(el) {
if (el.tagName === "INPUT" && el.type !== "submit")
snippet.log("name:" + el.name + ", value:" + el.value)
});
});Run Code Online (Sandbox Code Playgroud)
<form>
<input type="text" name="firstName" value="The first name">
<input type="text" name="lastName" value="The last name">
<input type="email" name="emailAddress" value="email@example.com">
<br>
<input type="submit" value="Submit">
</form>
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="//tjcrowder.github.io/simple-snippets-console/snippet.js"></script>Run Code Online (Sandbox Code Playgroud)
DOM4现在将NodeList定义为可迭代:
iterable<Node>;
Run Code Online (Sandbox Code Playgroud)
根据IDL草案,这意味着
的接口可以被宣布为可迭代通过使用 迭代声明(匹配
Iterable在接口的主体).Run Code Online (Sandbox Code Playgroud)iterable<value-type>; iterable<key-type, value-type>;实现被声明为可迭代的接口的对象被迭代以获得一系列值.
注意:在ECMAScript语言绑定中,可迭代的接口将在其接口原型对象上具有"entries","forEach","keys","values"和 @@ iterator属性.
如果给出单个类型参数,则接口具有值迭代器并提供指定类型的值.
该方法仅适用于相对较新版本的Chrome/Chromium吗?如果是,是否记录在案?
是的,这是DOM4中的新功能,因此无法广泛使用.
是否有关于Node.childNodes的forEach()方法的文档?
请参阅为[ArrayClass]添加支持,并在Chromium bug跟踪器上的NodeList上使用它:
来自https://bugs.webkit.org/show_bug.cgi?id=81573
http://dom.spec.whatwg.org/#interface-nodelist
DOM4规范NodeList在其原型链中具有Array.prototype.
这个的更多背景.[ArrayClass]允许我们执行诸如document.querySelectorAll('.foo').forEach等操作.bugs.webkit.org上的补丁有一个运行时标志,因为不清楚这是否仍然可以实现.
从历史上看,这些类似数组的对象不包含数组原型中的这些方法,从而导致代码类似Array.prototype.forEach.call(nodeList, function() { ... }).现在这意味着改变DOM4.
| 归档时间: |
|
| 查看次数: |
1153 次 |
| 最近记录: |