我已经很好地形成了带有图片标记的html
<img src="" width="400" height="100"/>
但是当我通过getElementById innerHTML获取它时,图像标记变得不合适:
<img src="" width="400" height="100">
这是一个用于测试的小页面
<html>
<body>
<article id="a1">
<img src="" width="400" height="100"/>
</article>
<script>
alert(document.getElementById("a1").innerHTML);
</script>
<body>
</html>
如何从dom树中获得良好的img标签? 我尝试将html声明为xhtml,但它没有帮助。
答案 0 :(得分:0)
浏览器(至少Chrome和Firefox,我还没有进一步测试)只要它们处于XML模式,就会在innerHTML
中为您提供格式正确的标记。
这是由XML 内容类型HTTP标头(例如Content-Type: application/xhtml+xml
)触发的,而不是XHTML Doctype(仅用作标准模式调用的字符串)。< / p>
它们还将包含标记,以指定正在使用的命名空间。
答案 1 :(得分:0)
请勿使用innerHTML
,因为它不可靠。您应该将代码序列化。
alert(new XMLSerializer().serializeToString(document.getElementById('a1')));