我正在尝试制作一个个人 Chrome 扩展程序,其中包含指向我最常访问的网站的选项卡。我的选项卡侧面有一个大边框,我想将其用作按钮,按下时将打开新选项卡中的每个链接。
我目前将按钮设置为:
<button class="left-button" onclick="topLeft()"></button>
我有一些像这样的 JavaScript 设置:
function topLeft() {
window.open('https://www.youtube.com');
window.open('https://www.reddit.com');
window.open('https://www.facebook.com');
window.open('https://outlook.live.com');
};
在将其作为扩展程序上传到 Chrome 之前,上面的代码运行良好(因为在本地运行时运行良好)。作为扩展上传后,可以按下按钮,但没有任何反应。
我试过更换我的
window.open('url');
与
chrome.tabs.create({url: "myurls" });
但结果并不成功。
我的 manifest.json 文件如下所示:
{
"manifest_version": 2,
"name": "my extension",
"description": "A Homepage extension.",
"version": "1.0",
"permissions": ["tabs"],
"chrome_url_overrides" : {
"newtab" : "index.html"
}
}
最佳答案
对于 chrome 扩展,默认 Inline JavaScript will not be executed ,这意味着 onLeft
方法不会被下一行触发。
<button class="left-button" onclick="topLeft()"></button>
请尝试以下方式绑定(bind)点击处理器:
<button id="LEFT_BUTTON_ID" class="left-button" onclick="topLeft()"></button>
document.getElementById('LEFT_BUTTON_ID').addEventListener('click', topLeft);
关于javascript - 扩展程序在上传到 chrome 应用商店后不会在新选项卡中打开多个链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41285291/