如何制作Firefox扩展程序以单击仅由类而非id定义的div。例如:
<div class="testBtn">Click me</div>
该站点支持jQuery,因此在firefox控制台中可以编写:$(".testBtn").click()
但是如果我将相同的代码段放入我的js文件中,它就不起作用了。我怎样才能让它发挥作用?
应该点击的网站不是我的网站,所以我无法修改它。
答案 0 :(得分:0)
您应该使用trigger
代替。
$(".testBtn").trigger("click");
答案 1 :(得分:0)
你不能使用firefox插件中的$。你必须使用document.querySelector获取第一个命中,或者document.querySelectorAll。
所以document.querySelector('.testBtn')
将返回类testBtn
https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector https://developer.mozilla.org/en-US/docs/Web/API/Document.querySelectorAll?redirectlocale=en-US&redirectslug=DOM%2FDocument.querySelectorAll
你也可以在元素上使用querySelector。像:
document.querySelector('.testBtn').querySelectorAll('div')
将获得第一个testBtn分类元素
但与一行相当的可能是document.querySelectorAll('.testBtn > div');
或者可能没有>
然后在从querySelector获得的元素上添加一个.click()
现在来自firefox-addons你可能会使用gBrowser.contentDocument
代替document