可以确定html元素是否自动关闭?

时间:2010-07-07 05:50:38

标签: javascript dom

我今晚开始研究一个实验项目。我意识到我需要确定一组选定的节点是否自动关闭。

例如,假设我查询dom并获取此节点集合:

<br/><br/><p></p><div></div></br/>

元素上是否有可以确定哪个属性的属性?

此外,不要过滤特定的html元素(哦,如果这是唯一的限制),假设我正在解析一个可以包含任意命名标签的XML文档。

2 个答案:

答案 0 :(得分:1)

XML不会将自闭项标记与空标记区分开来,因此就{XML>而言,<p /><p></p>是相同的。

有些XML解析器会将所有这些结构解析为<p />,有些会将它们全部解析为<p></p>,有些会将它们保留原样。

我想说没有万无一失的方法可以做到这一点 - 您必须在您选择的浏览器上进行专门测试,看看究竟返回了什么,以及您是否可以使用它(例如搜索/>

答案 1 :(得分:0)

我能想到的唯一一件事就是每个节点对它们执行一个tostring并检查最后两个字符是/>但据我所知,没有预定义的方法来查找是否有节点是自我关闭还是不是

我可能错了tostring但是有一种方法可以将整个节点作为文本 - 我知道这是一个jQuery函数,但我不记得如何在纯JS中执行它。