谷歌浏览器中网站强制新窗口打开至特定屏幕位置表明已获Window Placement权限,需用户授权且仅对HTTPS或可信页面生效;可通过地址栏锁图标禁用“弹出窗口和重定向”、全局添加域名至阻止列表、DevTools断点拦截或启用chrome://flags实验性API等方式管理。

如果您在使用谷歌浏览器时发现某个网站能将新窗口强制打开到特定屏幕或坐标位置,例如在双屏环境中跳转至副屏左上角,这表明该网站已获得 Window Placement(窗口放置)权限。该权限需用户明确授权,且仅对 HTTPS 安全页面或被标记为可信的页面生效。以下是配置与管理该权限的多种具体方法:
一、通过地址栏锁图标进入站点专属权限设置
Chrome 将窗口放置行为归入“弹出窗口和重定向”权限范畴,不单独列出“Window Placement”,但禁用该子项即可阻断所有 window.open() 的位置控制参数(如 left、top、width、height)。此方式精准作用于单个域名,不影响其他站点。
1、在地址栏中完整输入目标网站地址(例如 https://example.com),确保协议和域名准确无误。
2、加载页面后,点击地址栏左侧的锁形图标(若连接不安全则显示惊叹号图标)。
3、在弹出面板中点击“网站设置”链接,进入该站点独立权限管理页。
4、向下滚动至“弹出窗口和重定向”选项并点击进入其配置界面。

二、在站点设置中关闭弹出窗口权限以禁用窗口定位能力
窗口放置功能依赖于弹出窗口权限的启用状态;一旦该权限被设为“阻止”,所有调用 window.open() 并传入位置参数的操作将被静默忽略,新窗口默认在当前屏幕中心打开且不可编程定位。
1、确认“弹出窗口和重定向”开关当前处于“允许”状态(蓝色)。
2、将开关切换为“阻止”(灰色)。
3、关闭设置页,刷新原网页,验证是否不再触发跨屏跳转或固定坐标弹窗。

三、通过 chrome://settings/content/popups 添加全局阻止域名
当多个网站出现异常窗口行为,或个别站点设置未生效时,可通过内容设置中心统一添加域名至“不允许发送弹出式窗口的网站”列表,实现彻底屏蔽其窗口放置能力,覆盖所有已授予的例外权限。
1、在新标签页地址栏输入 chrome://settings/content/popups 并回车。
2、滚动至“不允许发送弹出式窗口的网站”区域下方,点击“添加”按钮。
3、在弹出输入框中填入目标域名(例如 example.com),注意不可包含 http://、https:// 或路径部分。
4、点击“添加”,该域名即被写入全局阻止列表,后续访问时 window.place() 和带参数的 window.open() 均失效。

四、使用开发者工具临时停用 JavaScript 窗口操作
在调试或临时规避场景下,可借助 DevTools 中断脚本执行流,阻止 window.open() 调用实际触发,适用于无法修改权限设置的受限环境(如企业内网策略锁定)。
1、在目标网页按 F12 打开开发者工具,切换至“Sources”面板。
2、按下 Ctrl + Shift + F(Windows/Linux)或 Cmd + Opt + F(macOS)打开全局搜索框。
3、输入 window.open 并回车,在匹配结果中右键对应代码行,选择“Add conditional breakpoint”。
4、在条件输入框中填入 true,使断点始终触发;刷新页面后,脚本将在调用前暂停,手动跳过即可阻止窗口创建。
五、通过 chrome://flags 启用实验性多屏窗口支持(仅限开发测试)
Chrome 提供了未默认启用的底层 API 支持标志,可用于启用 Window Placement API 的完整枚举与控制能力,但该功能需配合页面显式请求权限,且仅建议在受控测试环境中启用。
1、在新标签页地址栏输入 chrome://flags 并回车。
2、在搜索框中输入 #window-placement-api 并回车。
3、找到“Window Placement API”条目,将其状态由“Default”改为“Enabled”。
4、点击右下角“Relaunch”按钮重启浏览器,重启后页面可通过 navigator?.getScreenDetails() 获取多屏信息并请求 placement 权限。