创建Chrome扩展程序以在新标签页中打开链接

时间:2012-03-30 20:24:24

标签: google-chrome-extension

我想创建一个简单的Chrome扩展程序,点击它时会在新的浏览器标签中打开一个网址。这就是我对manifest.jason

的看法
{
    "name": "Sprout Social",
    "description": "Shortcut to Sprout Social",
    "permissions": [
        "tabs"
    ],
    "icons": {
        "128": "128.png"
    },
    "launch": {
        "web_url": "http://www.sproutsocial.com"
    }
}

任何帮助都会很棒。

3 个答案:

答案 0 :(得分:15)

好的,首先,manifest.json(不是jason)有一个严格的结构,你不能搞砸它。

https://developer.chrome.com/extensions/manifest.html

您必须创建一个浏览器操作扩展,这意味着您的扩展程序将在工具按钮附近有一个按钮。

https://developer.chrome.com/extensions/browserAction.html

您不需要任何popup.html,您可以跳过该部分。 您需要编写背景页面,很多人将其命名为background.html 这个HTML文件将包含您的代码,格式如下:

<html><head><script> your script here (use as many lines as you want)  </script></head>/html>

这个HTML永远不会出现。

代码可以是你想要的任何东西,比如其他答案中的代码:

chrome.browserAction.onClicked.addListener(function() {
    chrome.tabs.create({'url': "http://www.sproutsocial.com"});
});

就是这样。

答案 1 :(得分:5)

更简单的解决方案,您不需要HTML。

将此添加到 manifest.json

"browser_action": {
    "default_icon": "images/icon38.png",
    "default_title": "Your title"
},
"background": {
    "scripts": ["background.js"],
    "persistent": false
}

使用以下代码创建 background.js 文件:

chrome.browserAction.onClicked.addListener(function(tab) {
    chrome.tabs.create({ url: "http://www.yoursite.com" });
});

注意:我没有在manifest.json中添加"permissions": ["tabs"],因为它添加了权限警告:&#34;阅读您的浏览历史记录&#34;这可能会让用户感到困惑。扩展仍然有效。

答案 2 :(得分:2)

我认为您要在架构中定义的方法是

  chrome.tabs.create

 chrome.browserAction.onClicked.addListener(function() {

      chrome.tabs.create({'url': chrome.extension.getURL('popup.html')}, function(tab) {

      });

 });