Подтвердить что ты не робот

Как открыть всплывающее окно Google Chrome Extension?

Если я открою всплывающее окно расширения, я открою другое окно или вкладку после всплывающего окна, не оставаясь открытым, если я вернусь к нему.

Есть ли способ заставить его всплывающее окно остается открытым?

4b9b3361

Ответ 1

Как пользователь, вы в настоящее время не можете заставить всплывающее окно оставаться открытым. Это решение пользовательского интерфейса, которое сделал пользовательский интерфейс. Если вы хотите принудительно настроить установку, вы можете показать ее другим способом, изменив значок всплывающего окна, откройте новую вкладку, когда она запрашивает, или новое всплывающее окно для регистрации.

Как разработчик , просмотрите всплывающее окно и оно останется открытым.

Ответ 2

Вы не можете остановить закрытие всплывающего окна 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.

Ответ 3

В ответе на часто задаваемые вопросы здесь: http://developer.chrome.com/extensions/faq.html#faq-persist-popups

Всплывающие окна автоматически закрываются, когда пользователь фокусируется на какой-то части браузера за пределами всплывающего окна. Невозможно сохранить всплывающее окно открытым после нажатия пользователем.

Ответ 4

Если вы включаете панели на "chrome://flags/# enable-panels", вы можете использовать что-то вроде:

chrome.windows.create({
    url:"popup.html",
    type:"panel",
    width:300,
    height:200
});

чтобы открыть окно панели, которое будет оставаться на вершине все время, пока вы не перемещаете его со дна экрана.

Ответ 5

Как уже говорили другие, это намеренное ограничение всплывающего пользовательского интерфейса.

Вместо этого, вы можете добавить HTML-код на страницу, которая загружает содержимое, которое вы хотите во всплывающем окне, в элемент, который наводится на существующую страницу. Вы должны будете реализовать близкую функциональность самостоятельно, но она сохранится.

Посмотрите, например, как keyframes.app сделал это: https://github.com/mitchas/Keyframes.app/blob/master/Keyframes.app%20(Extension)/src/inject/ui.js

Ответ 6

Этот ответ в Как запретить закрытие инструментов разработчика Chrome при закрытии текущего окна браузера? что очень полезно в моем случае:


Не идеальное решение, но вы можете добавить точки останова в событиях Window.close и разгрузить, включив флажки по адресу:

Developer tools -> "Sources" tab -> Event Listener Breakpoints -> Window -> close

и

Event Listener Breakpoints -> Load -> unload

Постарайтесь отметить оба и посмотреть, какой из них лучше всего подходит вам

Ответ 7

Лучший способ обойти это:
- Щелкните правой кнопкой мыши внутри всплывающего окна аддона.
- осмотреть (или CTRK + Shift + I)

откроется новое окно с проверкой... просто оставьте это окно, и всплывающее окно надстройки никогда не закроется