所有HTML元素都是唯一的吗?

所有HTML元素都是唯一的吗?,html,dom,unique,Html,Dom,Unique,我正忙着编写JavaScript代码,让GUI页面元素具有自定义上下文菜单,当时我考虑检查元素是否存在,以便为其创建上下文菜单 function element_exists(el){ var tagName=el.tagName; var exists=0; for(var a=0;a<document.getElementsByTagName(tagName).length;a++){ if(document.getElementsByTagName(tagName)[a]==

我正忙着编写JavaScript代码,让GUI页面元素具有自定义上下文菜单,当时我考虑检查元素是否存在,以便为其创建上下文菜单

function element_exists(el){
var tagName=el.tagName;
var exists=0;
for(var a=0;a<document.getElementsByTagName(tagName).length;a++){
    if(document.getElementsByTagName(tagName)[a]==el){
        exists=1;
    }
}
return exists;
}
功能元素_存在(el){
var标记名=el.tagName;
var=0;

对于(var a=0;a我很确定答案是否定的;每个元素都是唯一的,不管它们是否有相似的值(包括“id”)

这可能会让你对Chrome中元素垃圾收集的工作原理有一些了解。不过,我不确定其他浏览器会如何响应


它概述了一些可能有助于测试您的理论的工具。

我很确定答案是否定的;每个元素都是唯一的,不管它们是否具有相似的值(包括“id”)

这可能会让你对Chrome中元素垃圾收集的工作原理有一些了解。不过,我不确定其他浏览器会如何响应

它概述了一些可能有助于测试您的理论的工具。

似乎是这样(至少对于我的桌面浏览器来说是这样,它们是Opera Next、Chrome和Chrome Canary、Firefox)。可能在IE7、8、9、10和11中也是如此。不过,这很奇怪。如果它能在这些较新的桌面浏览器上工作,那么它应该能在最新的移动浏览器上工作。看起来是这样的(至少对我的桌面浏览器是Opera Next、Chrome和Chrome Canary、Firefox)。在IE7、8、9、10和11中可能也一样。不过,这很奇怪。如果它能在这些较新的桌面浏览器上工作,那么它应该能在最新的移动浏览器上工作。