Javascript 如何获取id发生变化的元素
我正在尝试制作一个脚本,我需要在网页上抓取一个元素。 我在chrome的帮助下检查页面并选择元素,复制该元素的css代码,结果是:Javascript 如何获取id发生变化的元素,javascript,html,css,Javascript,Html,Css,我正在尝试制作一个脚本,我需要在网页上抓取一个元素。 我在chrome的帮助下检查页面并选择元素,复制该元素的css代码,结果是: <a id="4edd60cf-0462-4b8b-9b60-1d41911f3309" href="javascript:void(0);">Join now.</a> 问题是,当我清除所有缓存和cookie时,元素的id会改变 有没有其他方法可以抓住它 我曾尝试使用chrome的复制选择器功能,但它不起作用如果您没有要使用的属性,则可以
<a id="4edd60cf-0462-4b8b-9b60-1d41911f3309" href="javascript:void(0);">Join now.</a>
问题是,当我清除所有缓存和cookie时,元素的id会改变
有没有其他方法可以抓住它
我曾尝试使用chrome的复制选择器功能,但它不起作用如果您没有要使用的属性,则可以使用元素的文本 const link=[…document.querySelectorAll'a'].finde=>e.text==='Join now' iflink link.style.color='green'//对找到的链接执行一些操作。
如果您很乐意使用文本内容获取元素,那么可以使用xPath。下面是一个基本的JavaScript示例,带有一个按钮来演示 //要查找的元素的xPath var xpath=//a[containstext,'Join now']; var matchingElement=document.evaluatexpath,document,null,XPathResult.FIRST\u ORDERED\u NODE\u TYPE,null.singleNodeValue; //用于演示的按钮代码 document.getElementByIdtest.onclick=函数{ alertmatchingElement.id;};
获取ID我们需要上下文。您可以按元素进行选择,但我不希望这足够具体。您可能需要找到一个具有唯一类或ID的元素,然后向上或向下遍历该元素。例如,id=container的元素的子元素的元素行中的某些内容。该元素是否有父元素?您可以尝试查找具有更静态id的直接父级,并使用该id获取所需的最近的锚定标记