修改网页上的数据时,通常希望阻止用户在未保存其内容的情况下离开变化。这可以使用 window.onbeforeunload 事件来实现。
旧版浏览器(IE6-8、Firefox 1-3.5)
设置window.onbeforeunload 到返回字符串的函数:
window.onbeforeunload = function() { return "Unsaved changes. Are you sure you want to leave?"; };
删除事件以禁用它:
window.onbeforeunload = null;
现代浏览器(Chrome、Firefox、等)
启用提示:
window.onbeforeunload = function() { return true; };
禁用提示:
window.onbeforeunload = null;
要确定是否已进行更改,请使用验证框架或您自己的自定义事件处理程序。
jQuery 示例:
$('input').change(function() { if ($(this).val() != "") { // Enable the prompt window.onbeforeunload = function() { return true; }; } });
浏览器特定注意事项
以上是如何防止用户离开未保存更改的网页?的详细内容。更多信息请关注PHP中文网其他相关文章!