Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
Javascript 在IE 11中,标记名返回带名称空间的大写名称,而IE 7返回不带名称空间的小写名称_Javascript_Jquery_Html_Internet Explorer 11_Xml Namespaces - Fatal编程技术网

Javascript 在IE 11中,标记名返回带名称空间的大写名称,而IE 7返回不带名称空间的小写名称

Javascript 在IE 11中,标记名返回带名称空间的大写名称,而IE 7返回不带名称空间的小写名称,javascript,jquery,html,internet-explorer-11,xml-namespaces,Javascript,Jquery,Html,Internet Explorer 11,Xml Namespaces,我正在尝试将Dom元素中具有标记名的所有子元素检索到一个数组中 <xs:menu> <xs:submenu> </xs:submenu> </xs:menu> var item=menu.children.tags("XS:SUBMENU") ; IE 7 has menu.children[0].tagname as "submenu" IE 11 has menu.children[0].tagName as "XS:SUBMEN

我正在尝试将Dom元素中具有标记名的所有子元素检索到一个数组中

<xs:menu>
 <xs:submenu>
  </xs:submenu>
</xs:menu>

var item=menu.children.tags("XS:SUBMENU") ;

IE 7 has menu.children[0].tagname as  "submenu"
IE 11 has menu.children[0].tagName as  "XS:SUBMENU"

var item=menu.children.tags(“XS:SUBMENU”);
IE 7具有menu.children[0]。标记名为“submenu”
IE 11具有menu.children[0]。标记名为“XS:SUBMENU”

如何使menu.children[0]。标记名返回相同的标记名?

如果不关心名称空间,请使用
localName
属性,而不是
标记名
。它不应该包含任何名称空间,而且我注意到它的大小写更加一致。

只需添加
.toUpperCase()
。至于获取名称空间,除了将其添加到自己的名称空间之外,您可能无能为力。它还返回“XS:”extra..您指的是前缀(不是后缀)或更准确地说是名称空间。这应该是HTML还是XML?(这很重要。)@Grasshopper:那是你的问题。HTML中没有
子菜单
元素。localName返回小写,但在本例中带有命名空间,在ie 11中为“xs:submenu”,在ie 7中为“submenu”,因此IE11无法正确实现DOM4。我建议你向IE开发者报告这个bug。