2

Chrome 拡張機能のバックグラウンド スクリプトを使用して、URL の Chrome ブラウザをキャプチャしてみてください。

以下のコードを試してみると、新しい URL の変更では正常に動作しますが、タブの変更では動作しません

background.js

chrome.tabs.getSelected(null, function(tab) {
           chrome.extension.getBackgroundPage().console.log(tab.url);
});

マニフェスト.json

{
  "manifest_version": 2,

  "name": "My Test Extension",
  "description": "This extension demonstrates.",
  "version": "1.0",

  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": [
      "tabs",
       "activeTab",
        "http://*/*",
        "https://*/*"
  ]
}

コンソールログは、インストール後に一度出力され、その後応答がありません。

現在のタブの URL をキャプチャしたい... ユーザーがブラウザのタブを変更したり、新しいタブを作成したりするときに、拡張アイコンをクリックせずに現在のブラウザ タブの URL をバックグラウンドでキャプチャする必要があります。

URL を取得したら、URL の末尾に 1 つのクエリ文字列を追加する必要があります。

例えば

現在のタブの URL: stackoverflow.com 拡張子の変更/追加 URL: stackoverflow.com/question/java

4

3 に答える 3

1

以下のコードは期待どおりに正常に動作します

chrome.tabs.onUpdated.addListener( function( tabId,  changeInfo,  tab) {
       chrome.extension.getBackgroundPage().console.log(tab.url);
       if(tab.url=="https://www.google.co.in/"){
            chrome.tabs.update(tab.id, {url: 'https://www.yahoo.com/'});
       }
});

コメントを教えて

于 2013-06-17T13:05:44.150 に答える