在现代浏览器中,调用 JavaScript alert() 方法弹出的模态对话框,会在标题栏或主体区域明确显示当前网页的 域名(或 来源 origin),例如“example.com 显示”或“来自 example.com 的提示”。这一设计是浏览器为了防止 钓鱼攻击 和 社会工程学攻击 而引入的重要安全机制。

其核心原因在于,alert() 弹窗的内容完全由网页脚本控制,恶意站点可以轻易伪造出与操作系统对话框或可信网站界面高度相似的视觉效果,诱导用户泄露密码、验证码等敏感信息。如果在弹窗中不强制标注真实的发起源,攻击者就可以通过仿冒的“系统通知”或“安全警告”实施欺骗。加入域名后,用户可以直观地识别弹窗的 真实发起方,从而识破伪装。
这一行为由 Chrome(自2020年左右的版本开始默认开启)、Edge、Firefox 等主流浏览器实施,覆盖 alert、confirm 和 prompt 三种原生模态对话框。浏览器自动在弹窗中附加 当前页面的源(origin),通常格式为“域名 显示:”或“[域名] 显示”,不同浏览器和版本的呈现方式略有差异,但目标一致——提升用户安全意识,降低被欺骗的风险。
需要特别指出,这种域名标注是 浏览器强制行为,网页开发者无法通过任何 JavaScript API 去除或篡改该来源提示。如果页面处于被 sandbox 属性禁止弹出对话框的 iframe 中,调用 alert 会静默失败或抛出异常,这也是浏览器安全模型的一部分。另外,部分浏览器在全屏、自动化测试或扩展场景下,可能会调整对话框的展示方式,但源域名展示原则不会削弱。
综上所述,alert弹窗带有域名 并非程序错误或可配置选项,而是浏览器内置的 防欺骗安全特性,它通过强制显示来源信息,有效保护用户免受恶意弹窗的误导和侵害。

查看详情

查看详情