我正在尝试制作一个扩展程序,使新选项卡在加载新页面时打开一个特定的 URL。我想我应该从学习如何创建一个新标签开始。我的代码如下。
list .json
{
"manifest_version": 2,
"name": "name",
"description": "desctiption",
"version": "1.0",
"permissions": [
"tabs",
"<all_urls>"
],
"browser_action": {
"default_icon": "icon.png"
},
"background" : {
"page" : "background.html",
"persistent" : false
}
}
//something.js
function createTab() {
chrome.tabs.create({url: "http://www.stackoverflow.com"});
}
<!--background.html-->
<html>
<head>
<body>
<script src="something.js"></script>
<a href="#" onclick="createTab();">Create a new tab</a>
</body>
</head>
</html>
最佳答案
自 JavaScript and HTML must be in separate files 以来,内联函数 createTab()
从未执行过和内联语句是不允许的。
相反,绑定(bind)到您的 JS 文件中的事件并将您的标签移动到元素下方。
例如,HTML:
<body>
<a id="myHREF">Create a new tab</a>
<script src="popup.js"></script>
</body>
还有你的javascript:
function createTab() {
chrome.tabs.create({
url: "http://www.stackoverflow.com"
});
}
document.getElementById("myHREF").onclick = createTab;
关于javascript - 为什么我的 Chrome 扩展代码无法打开新标签页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22395968/