【问题标题】:How can I individualize an element to a unique identifier?如何将元素个性化为唯一标识符?
【发布时间】:2015-10-10 19:47:45
【问题描述】:

我正在尝试找出一种将元素个性化为唯一标识符的方法。我的意思是,对于每个元素(在 DOM 中开始的元素或稍后创建的元素),我想为该元素分配一个唯一标识符,以便当用户重新访问网站时,他们将能够通过其唯一标识符引用该元素。

我在想,你可以根据它的父元素在哪里,它在它的父元素中的位置,以及它的兄弟姐妹在参考它们各自的标识符时的位置,可以将某种任意标识符编号或字符串应用于任何给定元素。

是否有人对我如何以这样的方式个性化任何给定元素有任何建议?我之所以这么问,是因为我想编写一个 Chrome 扩展程序,允许用户任意选择任何元素并对它们应用不同的规则,这些规则将在多个站点访问中持续存在。

【问题讨论】:

    标签: javascript html google-chrome-extension


    【解决方案1】:

    您可以使用 XPath。已经有现有的 chrome 插件可以为每个元素找到一个唯一的 XPath。 example chrome xpath plugin

    【讨论】:

    • 太棒了,我不知道这存在。谢谢!
    【解决方案2】:

    一般来说,您的问题不是 100% 可以解决的。一个页面可能会发生一点变化,这会使你所有的标识符都消失,而启发式方法只能到此为止。

    假设用户在网站的第二篇新闻文章中选择了一个特定的词。

    后来,他访问了该站点,并且有一篇新的新闻文章,把其他人推倒了。现在将找不到该词,或者将突出显示不相关的词。

    也就是说,正如 omer727 所指出的,您所描述的内容最接近 XPath

    单个元素可以有多个有效的 XPath,因此如何构建 XPath 取决于您。这个话题已经有big question了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-12
      相关资源
      最近更新 更多