Oma*_*bid 25 html javascript dom
除了ID之外,如果你说,你想要一个HTML元素的唯一标识符(比如说div).
我浏览了DOM,了解每个元素的独特之处(如数字或字符串); 但DOM很大,我没能在互联网上找到它.
是否有任何属性(显然在DOM中)仅对该元素是唯一的?(除了ID之外,您也没有指定它,但是在构造DOM时会出现)
RoT*_*oRa 17
正如佩卡所说,如果你想描述你想做什么会更容易.在此之前,这里有两个建议.
除非您确实需要将id表示为某种字符串,否则可以保存正常的DOM引用.
如果由于某种原因确实需要将其表示为字符串,那么您需要自己分配一个唯一的ID.
var getId = (function () {
var incrementingId = 0;
return function(element) {
if (!element.id) {
element.id = "id_" + incrementingId++;
// Possibly add a check if this ID really is unique
}
return element.id;
};
}());
Run Code Online (Sandbox Code Playgroud)
我能想到的唯一其他标识符是文档中元素的 XPath。
例如,这个页面标题内的标题链接的 XPath 为
/html/body/div[3]/div[2]/div/h1/a
Run Code Online (Sandbox Code Playgroud)
但就像 Pekka 已经说过的,这取决于你想做什么。而且我不认为你可以轻松地从 JavaScript 的 DOM 中获得 Xpath,尽管 Xpath 现在在 JS 引擎中可用。