0

マニフェスト.json:

{
 "background_page": "background.html",
 "browser_action": {
 "default_icon": "icon-128.png"
 },
 "name": "testtt",
 "description": "testttttttt",
 "icons": {
     "16": "icon-16.png",
     "48": "icon-48.png",
     "128": "icon-128.png" },
 "permissions": [
     "tabs",
     "http://*/*",
     "https://*/*"
 ],
 "version": "0.1"
}

background.html:

<script>
    chrome.browserAction.onClicked.addListener(function(tab) {
        chrome.tabs.executeScript(tab.id, {file: "bookmarklet.js"})
    });
</script>

ブックマークレット.js:

alert("hello");

この拡張機能をインストールすると、右上のボタンが機能しません。そのため、動作させるにはクロムを再起動する必要があります。なんで ?

4

1 に答える 1

1

この目的のために魅力のように機能します。

ただし、ページにいるときにボタンをクリックすると失敗するはずですchrome://...background.htmlしかし、次のように修正できます。

<script type="text/javascript">
    chrome.browserAction.onClicked.addListener(function(tab) {
        if(typeof(tab)!=='object' || tab.url.toLowerCase().indexOf('chrome://')===0) return;
        chrome.tabs.executeScript(tab.id, {file: "bookmarklet.js"})
    });
</script>

テスト済み 19.0.1084.46 (公式ビルド 135956) m

于 2012-05-23T17:58:26.693 に答える