Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有XML-DOMParser的HTML、SVG和Javascript不读取所有其他元素_Javascript_Html_Xml_Svg - Fatal编程技术网

带有XML-DOMParser的HTML、SVG和Javascript不读取所有其他元素

带有XML-DOMParser的HTML、SVG和Javascript不读取所有其他元素,javascript,html,xml,svg,Javascript,Html,Xml,Svg,我正在编写一个程序,该程序将SVG数据保存到xml文件中,并从xml文件中加载SVG数据,它确实可以工作,但由于某种原因,每当DOMParser运行时,其他所有元素都不会被读取。 我试图读取的XML文件的格式如下: <?xml version="1.0" encoding="utf-8"?> <marks> <path xmlns="http://www.w3.org/2000/svg" class="mark" d="M736 264 L736 264 L736

我正在编写一个程序,该程序将SVG数据保存到xml文件中,并从xml文件中加载SVG数据,它确实可以工作,但由于某种原因,每当DOMParser运行时,其他所有元素都不会被读取。 我试图读取的XML文件的格式如下:

<?xml version="1.0" encoding="utf-8"?>
<marks>
<path xmlns="http://www.w3.org/2000/svg" class="mark" d="M736 264 L736 264 L736 264 L736 265 L736 268 L736 269 L736 272 L736 277 L736 280 L736 288 L736 304 L736 312 L737 318 L740 356 L740 364 L740 376 L741 398 L742 430 L742 474 L744 488" fill="none" stroke="#000000" stroke-width="2" id="A"></path>
<path xmlns="http://www.w3.org/2000/svg" class="mark" d="M1230 426 L1230 428 L1230 428 L1229 428 L1228 429 L1228 430 L1228 430 L1226 432 L1224 432 L1218 434 L1216 436 L1209 436 L1194 440 L1186 440 L1180 440 L1158 444 L1092 445 L1018 446 L928 446 L902 446" fill="none" stroke="#000000" stroke-width="2" id="AA"></path>
</marks>

在本例中,第一个元素不被读取,但第二个元素被读取。下面是javascript代码:

var e='';
var parser=新的DOMParser();
var xmlDoc=parser.parseFromString(e,“text/xml”);

console.log(xmlDoc)
尝试使用
“application/xml”
而不是
“text/xml”

好吧,我只是在控制台中用硬编码的xml字符串尝试了一下,得到了正确的文档。您确定变量“e”的内容吗?e是包含xml的字符串。在将其传递给解析器之前,我正在记录它。是否可能是使用的浏览器有问题?(Overwolf),尽管Overwolf的浏览器使用chromium,所以我无法想象这是问题所在。您如何确定第一个元素没有被读取?console.log(xmlDoc)只显示第二个元素。如果我要增加条目的数量,同样的事情也会发生,奇数元素永远不会显示在日志中,并且不能通过文档的DOM方法访问。很难说发生了什么。我添加了代码段以便运行代码,它在Windows10上的Chrome57中显示了正确的值。您可以尝试记录
xmlDoc.children[0].children.length
并查看是否在浏览器上返回2。。。