browserSettings.allowPopupsForUserEvents
一个 BrowserSetting 对象,可用于启用或禁用网页响应用户操作打开弹出窗口的能力。
底层值为布尔值。
默认情况下,浏览器允许网页响应一组特定事件打开弹出窗口:例如,click、mouseup、submit。如果 allowPopupsForUserEvents 设置为 false,则任何用户事件都无法打开弹出窗口。如果设置为 true,则允许默认事件集打开弹出窗口。
例如,假设一个网页有如下代码
js
window.addEventListener("click", (e) => {
window.open("https://example.com", "myPopup", "height=400,width=400");
});
默认情况下,这将打开一个弹出窗口。如果您的扩展程序将 allowPopupsForUserEvents 设置为 false,则不会打开弹出窗口,用户将被告知弹出窗口已被阻止。
示例
切换设置
js
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();
});
浏览器兼容性
加载中…