今天我遇到了这个问题,这让我很恼火......我正在维护一个JS项目并且有一行:
node.tagName
node.nodeType
在哪里1
。显然代码想要获取这个元素的标签名称,它似乎适用于 99.99% 的网页......
可悲的是,当我在http://codeforces.com/problemset/problem/377/D上执行脚本时,它不起作用。原因是有一个form
具有子节点的元素具有 property name="tagName"
。
form
具有属性的元素的子节点name
可以通过如下方式访问:(node.NAME_VALUE
引用),因此node.tagName
将获取其名称属性为tagName
而不是节点标签名称的子节点form
。
有没有人也遇到过这个问题?除了检查节点是否存在之外,还有其他解决方案form
吗?
编辑 1:
我在这里为 jQuery 解雇了一个错误。我这样做是因为 jQuery 解决这个问题可能.prop("tagName")
比让所有浏览器都解决这个问题要容易得多。
顺便说一句,我认为没有人应该使用类似tagName
或nodeName
作为 HTMLInputElementname
值的东西。