4

クローム拡張機能を実装しました。 popup.htmlを新しいタブで開くことができるのだろうか?すべてのページをクリックするとポップアップが消えます。(..ページに貼り付けることができないのか、新しいページに拡張機能を開く方法があるのだろうか?新しいタブでクロム拡張機能を開く

答えて

5

はい、ポップアップページはちょうど通常の拡張ページでは、バックグラウンドページから新しいポップアップタブを開くために次の操作を行うことができます。ユーザーが最初に拡張機能をインストールするたびに、私はaboutページを開きます。

:私の拡張機能の一つ、 My Hangoutsについては
chrome.tabs.create({url: 'popup.html'}) 

、私はポップアップ内の小さな「オープンタブとして」ボタンを持って、私はこれを実行するために、そのリンクのクリックイベントをバインド
chrome.tabs.create({url: chrome.extension.getURL('popup.html#window')}); 

私がハッシュに合格したのは、プレイする不動産が増えたためにユーザーがポップアップでコンテンツを開くときに、コンテンツを追加したいからです。

ポップアップの中で、私は次のような新しいタブページにまたは通常のページにタブを開いたかどうかを区別するために、通常のJavaScriptを使用します。

if (window.location.hash == '#window') { 
    this.displayAsTab = true; 
} 

あなたはあなたの拡張を行うために、このようなトリックを行うことができますユーザーの利便性が向上します。

+0

うわー..本当にクールな音..私はpopup.htmlで次のことをやってみましたが、ちょっとした仕事はありませんでした。私が間違っていることは何ですか? (jqueryを含む) $(function(){ \t chrome.tabs.create({'url':chrome.extension.getURL( 'popup.html')}); }); background.htmlでも同じことをやってみましたが、うまくいきませんでした。私はこの作品を見ることができる簡単な方法はありますか?同様に、リンクをクリックすると、ポップアップ全体が新しいタブに表示されますか? – sharath

+0

私が試したところ$(function(){ chrome.tabs.create({'url':chrome.extension.getURL( 'popup.html')、 'selected': 'true'})}};} これはうまくいきませんでしたが、試してみました。 $(function(){ chrome.tabs.create({'url': 'http://www.google.com'、 'selected': 'true'}); }); それは働いた。 Googleのために、それは働いたが、popup.htmlのためにそれdidnt。私は上記のコードをpopup.htmlの中に持っています – sharath

+0

@paypalcompおそらくgist.github.comまたはpastebinにもっとコードを投稿できますか?コンソールのエラーをチェックしましたか?ポップアップを右クリックして、Inspectを選択します。コンソールタブをクリックし、エラーを表示します。 (あなたの背景ページにも同じですが、あなたの設定/オプションウィンドウで利用できます。) –

1

はここに同じ問題です:Chrome Extension: onclick extension icon, open popup.html in new tab

使用:タブを固執する "ピン留め"

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

プロパティ。

+0

うわー..本当にクールな音..私はpopup.htmlで次のことを試みましたが、ちょっとした仕事はありませんでした。間違っていますか?(私はjqueryを含んでいます)$(function(){chrome.tabs.create({'url':chrome.extension.getURL( 'popup.html')});});また、リンクをクリックすると、新しいタブにポップアップが表示されますか? – sharath

+0

これらのchrome。* APIは、拡張機能でのみ呼び出すことができますプロセス(バックグラウンドページ、オプションページ、ポップアップなど)。あなたはメッセージパッシングを使用することができます。 – Vinta

関連する問題