单击按钮的Chrome扩展程序

时间:2018-09-17 15:10:03

标签: javascript html google-chrome

我有一个带有按钮的页面,我正在创建一个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();"
    });
});

我点击了该应用程序,但没有任何反应。我已经尝试了几件事,但是似乎没用

1 个答案:

答案 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">

您会注意到,我也删除了您在问题中使用的标签的特殊性。没必要。