xml获取属性javascript不会;无法处理childNodes
xml get attributes javascript doesn't work on childNodes
我有以下代码示例,它们试图显示svg映射的d
属性(在此处找到)。
// path method
var node = xmlDoc.getElementById('g67');
console.log(node);
for(var i = 0; i < node.getElementsByTagName('path').length; ++i) {
console.log(node.getElementsByTagName('path')[i].getAttribute('d'));
}
和
// childNodes method
var node = xmlDoc.getElementById('g67');
console.log(node);
for(var i = 0; i < node.childNodes.length; ++i) {
console.log(node.childNodes[i].getAttribute('d'));
}
前者有效,后者无效。
我知道我在XMLDOM中的节点概念上出了问题。如有任何帮助,我们将不胜感激。谢谢你。
完整的代码可以在这里找到
childNodes
为您提供所有子节点。文本节点、注释、处理说明等等。
您想要检查子类型(名称必须是"路径"):
var node = document.getElementById('g67'), child, i;
console.log(node);
for (i = 0; i < node.childNodes.length; i++) {
child = node.childNodes[i];
if (child.nodeName === 'path') {
console.log(child.getAttribute('d'));
}
}
还要注意,childNodes
只为您提供直接子项,而getElementsByTagName()
为您提供所有子项。
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- keyup事件处理程序更改焦点不适用于快速键入
- 如何使用jquery处理php循环通过元素
- angular.js没有'无法在PhoneGap中处理视图标记
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 提示使用服务器端事件处理程序激活JavaScript
- javascript:如何在antlr生成的Lexer中进行错误处理
- 如何编写一个具有公共标头的批处理
- 在同一个服务工作者中处理service-worker.js有任何影响吗
- 如何处理node.js节点mongodb中的连接和查询队列
- 通过命令行/批处理文件打开页面时,将javascript代码注入Google Chrome
- 如何处理10页以上的静态页眉/页脚
- 将事件处理程序绑定到任何可能的事件
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- python到“;流“;字典处理
- 使用javascript进行实时图像处理
- 导入jQuery脚本获胜'我不处理html文件
- Javascript无法处理表单提交
- 在承诺链中处理早期回报的最佳方式
- xml获取属性javascript不会;无法处理childNodes