为什么在 javascript DOM 中,nodeName 有时是全大写的?

2024-03-08

所以我有一个 DOM 文档,本质上是这样的

<categories>
    <category id="1"/>
    <category id="2"/>
</categories>

正如我所期望的,这就是文档在 Firebug 中预览的方式。

但是,当我将其发布到服务器时,我得到

<categories>
    <CATEGORY id="1"/>
    <CATEGORY id="2"/>
</categories>

事实上,doc.documentElement.firstChild.nodeName 返回“CATEGORY”。使用 jQuery.append('') 添加节点。

为什么返回的子标签全部大写?


对于被视为 HTML 的 DOM 中的 HTML 元素,nodeName 始终返回大写名称……但是,对于 XML 则不然。

更多信息在这里 http://ejohn.org/blog/nodename-case-sensitivity/

我不确定这是否完全回答了您的问题,但我猜答案的一部分是您的文件被视为 HTML 文档,至少就 nodeName 而言是这样。

更正: It's JQuery这就是处理 HTML 之类的东西。从之前的 Stack Overflow 答案 https://stackoverflow.com/questions/248287/jquery-how-to-add-xml-node:

JQuery uses a hidden div innerHTML to build the child node, that's why the capitalization differs

我很确定您遇到了与之前的答案相同的问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么在 javascript DOM 中,nodeName 有时是全大写的? 的相关文章

随机推荐