拡張機能のポップアップを開くと、ポップアップに戻って別のウィンドウまたはタブを開いても、開いたままになりません。
ポップアップを開いたままにするように強制する方法はありますか?
serとして、現在、ポップアップを強制的に開いたままにすることはできません。これは、UIチームが行ったUIの決定です。設定を強制したい場合は、ポップアップアイコンを変更したり、要求時に新しいタブを開いたり、登録用の新しいポップアップビューを表示したりして、別の方法でこれを表示できます。
developerとして、ポップアップを検査します。開いたままになります。
開発者モードでない限り、あなたは Chromeポップアップが閉じるのを止めることはできません を止めることはできません。ただし、この代替手段を検討することもできます。
popup.html
ファイルに、これを実行するJavaScriptファイルをロードします。
var popupWindow = window.open(
chrome.extension.getURL("normal_popup.html"),
"exampleName",
"width=400,height=400"
);
window.close(); // close the Chrome extension pop-up
これにより、拡張機能のファイルnormal_popup.html
が通常のポップアップウィンドウで開きます。このウィンドウは、フォーカスを失っても閉じません。 nameパラメータが同じであるため、ユーザーがpopup.html
をもう一度起動すると、ポップアップウィンドウが再利用されます。
FAQ here: http://developer.chrome.com/extensions/faq.html#faq-persist-popups への回答
ユーザーがポップアップ以外のブラウザの一部にフォーカスすると、ポップアップは自動的に閉じます。ユーザーがクリックした後、ポップアップを開いたままにする方法はありません。
「chrome:// flags /#enable-panels」でパネルを有効にすると、次のようなものを使用できます。
chrome.windows.create({
url:"popup.html",
type:"panel",
width:300,
height:200
});
代わりにパネルウィンドウを開くと、画面の下から動かさない限り、常に上に表示されます。
他の人が言ったように、これはポップアップUIの意図的な制限です。
代わりに、ポップアップに必要なコンテンツを既存のページをホバーする要素にロードするHTMLをページに挿入できます。クローズ機能を自分で実装する必要がありますが、それは持続します。
例を見てください。どうやって keyframes.app
はそれを行いました: https://github.com/mitchas/Keyframes.app/blob/master/Keyframes.app%20(Extension)/src/inject/ui.js
この回答 から Chrome開発者ツールが現在のブラウザーウィンドウが閉じたときに閉じないようにするにはどうすればよいですか? 私の場合に非常に役立つもの:
完璧な解決策ではありませんが、次のチェックボックスをオンにすることで、イベントWindow.closeとアンロードにブレークポイントを追加できます。
Developer tools -> "Sources" tab -> Event Listener Breakpoints -> Window -> close
そして
Event Listener Breakpoints -> Load -> unload
両方にマークを付けて、どちらがあなたに最適かを確認してください
これを回避する最良の方法は次のとおりです。
-アドオンポップアップ内を右クリック
-検査(またはCTRK + Shift + I)
新しいウィンドウがインスペクトで開きます...そのウィンドウを保持するだけで、アドオンポップアップは閉じません