我对 PHP 中的 XPath 非常熟悉,并且想在 JavaScript 中使用它,最终目标是制作一个扩展来帮助我做一些事情。
我有以下 XPath,它可以在 Chrome 上的开发工具中运行和测试:
//div[contains(@data-bt,'rank')]
Run Code Online (Sandbox Code Playgroud)
但是,它似乎不适用于querySelectorAll。但以下情况确实如此:
document.querySelectorAll("div[data-bt]")
Run Code Online (Sandbox Code Playgroud)
我还注意到,//在 XPath 上使用似乎会引发错误,指出它不是有效的选择器。
阅读有关querySelector. 我发现以下内容与我试图实现的 XPath 的效果相同。
x = document.querySelectorAll('div[data-bt*="rank"]');
for (var i = 0; i < x.length; i++) {
json_str = x[i].getAttribute('data-bt');
data = JSON.parse(json_str);
console.log(data.id);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
39428 次 |
| 最近记录: |