BeforeUnloadEvent: returnValue 属性
已弃用:此特性不再推荐。虽然某些浏览器可能仍然支持它,但它可能已经从相关的网络标准中删除,可能正在删除过程中,或者可能仅为兼容性目的而保留。请避免使用它,如果可能,请更新现有代码;请参阅本页底部的兼容性表格以指导您的决策。请注意,此特性可能随时停止工作。
BeforeUnloadEvent 接口的 returnValue 属性,当设置为真值时,会在用户尝试关闭或重新加载页面,或者导航到其他地方时,触发浏览器生成的确认对话框,询问用户是否确实想要离开该页面。这旨在帮助防止未保存的数据丢失。
注意: returnValue 是一项遗留功能,最佳实践是通过在 BeforeUnloadEvent 对象上调用 Event.preventDefault() 来触发对话框,同时也要设置 returnValue 以支持旧版浏览器。有关最新、详细的指导,请参阅 beforeunload 事件参考。
值
returnValue 初始化为空字符串 ("") 值。
将其设置为几乎任何 真值 都会导致在页面关闭/重新加载时触发对话框,但请注意,它还需要 粘性激活。换句话说,仅当框架或任何嵌入式框架接收到用户手势或用户交互时,浏览器才会显示对话框。如果用户从未与页面进行过交互,那么就没有需要保存的用户数据,因此对话框没有合法的用例。
注意: 对话框中会显示一个浏览器指定的通用字符串。此字符串无法通过网页代码控制。
示例
最佳实践示例,请参阅 beforeunload 事件参考页面。
规范
| 规范 |
|---|
| HTML # dom-beforeunloadevent-returnvalue |
浏览器兼容性
加载中…