browserSettings.allowPopupsForUserEvents
Объект BrowserSetting, который можно использовать для включения или выключения возможности веб-страницам открывать всплывающие окна в ответ на действия пользователя.
Основное значение — булево.
По умолчанию браузеры разрешают веб-страницам открывать всплывающие окна в ответ на определенный набор событий: например, click, mouseup, submit. Если allowPopupsForUserEvents установлено в false, никакие события пользователя не смогут открыть всплывающие окна. Если оно установлено в true, разрешается открытие всплывающих окон по умолчанию набором событий.
Например, предположим, что на веб-странице есть код такого вида:
window.addEventListener("click", (e) => { window.open("https://example.com", "myPopup", "height=400,width=400"); });
По умолчанию это откроет окно всплывающего сообщения. Если ваш расширение установит allowPopupsForUserEvents в false, тогда всплывающее окно не откроется, и пользователю будет сообщено о блокировке всплывающего окна.
Совместимость с браузерами
| Десктопные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
allowPopupsForUserEvents |
Нет | Нет | 57 | ? | Нет | Нет | ? | ? | 57 | ? | Нет | ? |
Примеры
Переключить параметр:
function toggleAllowPopup() { function toggle(current) { console.log(`Current value: ${current.value}`); browser.browserSettings.allowPopupsForUserEvents.set({ value: !current.value, }); } browser.browserSettings.allowPopupsForUserEvents.get({}).then(toggle); } browser.browserAction.onClicked.addListener(() => { toggleAllowPopup(); });
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserSettings/allowPopupsForUserEvents