2

Chrome を開いたばかりだとします。すでに開いている「新しいタブ」があります。私の拡張機能にはボタンがあり、ユーザーがそれを押すと、コンテンツ (index.html) を表示する新しいタブを作成します。

これですべて正常に動作しますが、問題は「新しいタブ」が役に立たないままになっていることです。次の呼び出しを使用して、新しいタブを作成します。

chrome.tabs.create({
  "url":"index.html"
});

update() は機能しません (何も起こりません)。

chrome.tabs.update({
  "url":"index.html"
});

現在のタブを確認すると、「未定義」と表示されています。

chrome.tabs.getCurrent(function(t){console.log(t.id)})

新しいタブを作成する代わりに、現在の空のタブを使用するにはどうすればよいですか? 他の拡張機能 ( Google Mail Checkerなど) にも同じ問題があることがわかりました。

4

1 に答える 1

2

どうやら、Tabs API では、jQuery のように先頭のオプションの引数を省略できません。null現在のタブを変更するには、最初の引数 (tabId) として明示的に含める必要がありますupdate()

chrome.tabs.update(null, {
    "url":"index.html"
});
于 2012-04-09T15:59:25.030 に答える