油猴不支持xpath吗
我在console进行输入代码使用,都正常,但是加载到按钮或者是油猴里面,都是失败跟报错的,这个是啥问题在点击里面直接写成alert("点击了按钮"); 他不会报错,然后在页面点击 也不会出问题 可能是require作用域的问题,哥哥吧代码贴一下看看? 查了一下$x好像是命令行的api
不属于网页和脚本内容。
可以考虑使用
```javascript
var xpath = function (xpathToExecute) {
var result = [];
var nodesSnapshot = document.evaluate(xpathToExecute, document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
for (var i = 0; i < nodesSnapshot.snapshotLength; i++) {
result.push(nodesSnapshot.snapshotItem(i));
}
return result;
}
```
代替
https://stackoverflow.com/questions/18432072/x-function-is-not-defined-inside-a-chrome-extension-content-script xpath肯定是支持的,因为我刚好看到了这种写法: https://greasyfork.org/zh-CN/scripts/433372-91wii%E8%B7%B3%E8%BF%87%E9%AA%8C%E8%AF%81/code
可是,你又 require 个 jquery 算什么路数
本以为你一记直拳袭来,老夫正欲欺步上前,硬抗这雷霆一击,怎料电石火花间,余光所见对方左拳微微下垂,略显疲软之态,内心大骇,欲拧腰错步,腾挪闪躲,然晚矣,对面右拳蓄势已久,风啸龙吟不可阻挡。阿门。
失传已久的黑虎掏心绝技再现江湖,怎生震撼了得。
话说回来,这样写有什么绝妙好处吗?望楼主和各路大神解答 王一之 发表于 2021-10-4 11:46
可能是require作用域的问题,哥哥吧代码贴一下看看?
let triple=document.createElement("button");
triple.innerText="一键查看";
triple.onclick=function(){
//三连代码
alert("点击了按钮");
$x("//span")
n = $x("//span")
for (var i=0;i<n.length;i++)
{
console.log(n);
n.click();
}
};
triple.className="BTN_outerWrapper_u5yp2z BTN_primary_u5yp2z BTN_medium_u5yp2z BTN_outerWrapperBtn_u5yp2z";//添加class
triple.id="yjck";//添加id
//绑定按钮
let share=document.querySelector('#mf-mms-orders-container > div > div > div > div > div.content > div > div:nth-child(1) > button');
share.parentElement.insertBefore(triple,share);
本帖最后由 沉睡中的主解 于 2021-10-4 16:39 编辑
脚本体验师001 发表于 2021-10-4 13:20
xpath肯定是支持的,因为我刚好看到了这种写法: https://greasyfork.org/zh-CN/scripts/433372-91wii%E8%B7 ...
require 个 jquery 是因为百度搜了 有相同的报错,然后我就跟着复制粘贴上去测试了 {:4_115:}我也不懂的 哥哥 李恒道 发表于 2021-10-4 12:03
查了一下$x好像是命令行的api
不属于网页和脚本内容。
好的 谢谢哥哥 我来仔细瞧瞧
页:
[1]