我有一个带有按钮的页面,我正在创建一个Chrome扩展程序来单击它,但它不起作用:
<input type="submit" name="commit" value="add to basket" class="button"/>
这是我的manifest.json
{
"description": "Click",
"manifest_version": 2,
"name": "click-product-addtocart-button",
"version": "0.1",
"permissions": [
"activeTab"
],
"background": {
"scripts": [
"background.js"
]
},
"browser_action": {
"default_icon": {
"32": "/images/icons/16.png"
},
"default_title": "Click product"
}
}
这是我的background.js
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(tab.id, {
code: "document.getElementByName('commit')[0].click();"
});
});
我点击了该应用程序,但没有任何反应。我已经尝试了几件事,但是似乎没用
答案 0 :(得分:1)
您的清单必须通过URL以及当前选项卡请求访问当前页面的权限。将您的权限更新为以下内容:
$.ajax = () =>
{
console.log("I shouldn't be doing this.");
// Here comes my new implementation
alert("Ajaaaaaaaax !!");
}
$.ajax();
这将允许扩展访问任何页面。我还建议将"permissions": [
"activeTab",
"*://*/*"
],
更改为name
。这将防止将来出现任何混乱。您可以按照以下步骤进行操作:
id
然后使用background.js:
<input type="submit" id="commit" value="add to basket" class="button">
您会注意到,我也删除了您在问题中使用的标签的特殊性。没必要。