1

不知何故,我想直接搜索一些文本?可以使用 querySelector 吗?

大教堂:

<div class="div1">
    <span class="text">
        <span> text to search </span>
    </span>
</div>



我尝试了以下但没有成功。

JS代码:document.querySelector('div[contains("text to")]')=失败

我知道简单的方法,比如:document.querySelector('span.text > span')
我的例子很简单,我知道。我正在寻找类似于 selenium 的解决方案selenium driver.find_element_by_link_text

我想独立搜索元素而不依赖于类或 id,有什么想法吗?

4

1 回答 1

1

直接用是不可能的querySelector。您必须先获取所有跨度,然后遍历它们以查看哪个具有您想要的文本。例如:

var results = []; 
document.querySelector("span").forEach(elem => {
    if (elem.textContent.includes("text to")) {
        results.push(elem);
    }
});
于 2020-05-05T00:55:52.743 回答