A BrowserSetting
object that can be used to enable or disable the ability of web pages to open popups in response to user actions.
The underlying value is a boolean.
By default, browsers allow web pages to open popups in response to a particular set of events: for example, click, mouseup, submit. If allowPopupsForUserEvents
is set to false
, no user events will be able to open popups. If it is set to true
, the default set of events will be allowed to open popups.
For example, suppose a web page has code like this:
window.addEventListener("click", (e) => { window.open("https://example.com","myPopup",'height=400,width=400'); });
By default, this will open a popup window. If your extension sets allowPopupsForUserEvents
to false
, then it will not open a popup, and the user will be informed that the popup was blocked.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
allowPopupsForUserEvents |
No |
No |
57 |
? |
No |
No |
? |
? |
57 |
? |
? |
? |
Toggle the setting:
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–2021 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