Если я открою всплывающее окно расширения, я открою другое окно или вкладку после всплывающего окна, не оставаясь открытым, если я вернусь к нему.
Есть ли способ заставить его всплывающее окно остается открытым?
Если я открою всплывающее окно расширения, я открою другое окно или вкладку после всплывающего окна, не оставаясь открытым, если я вернусь к нему.
Есть ли способ заставить его всплывающее окно остается открытым?
Как пользователь, вы в настоящее время не можете заставить всплывающее окно оставаться открытым. Это решение пользовательского интерфейса, которое сделал пользовательский интерфейс. Если вы хотите принудительно настроить установку, вы можете показать ее другим способом, изменив значок всплывающего окна, откройте новую вкладку, когда она запрашивает, или новое всплывающее окно для регистрации.
Как разработчик , просмотрите всплывающее окно и оно останется открытым.
Вы не можете остановить закрытие всплывающего окна 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
.
В ответе на часто задаваемые вопросы здесь: 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
});
чтобы открыть окно панели, которое будет оставаться на вершине все время, пока вы не перемещаете его со дна экрана.
Как уже говорили другие, это намеренное ограничение всплывающего пользовательского интерфейса.
Вместо этого, вы можете добавить 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)
откроется новое окно с проверкой... просто оставьте это окно, и всплывающее окно надстройки никогда не закроется