在将此问题标记为重复之前请阅读本问题
我正在寻找一种方式,当访客离开我的网页时,他被重定向到另一页。 (他不应该关闭页面)
一些例子:
当用户离开网页时,我不想要一个动作,如果他让它打开但是打开另一个程序,另一个标签等,我想要一个反应。
答案 0 :(得分:1)
您甚至可以blur
使用window
。当窗口关闭时,它会触发unload
事件。将代码附加到这两个事件将适合您:
$('body').on('mouseleave', function () {
$(window).on('beforeunload blur', function(){
// User has left!
// Sign out the user?
// I really hope alert should not work here! It prevents it from closing.
});
});
根据您的评论,如果您想确保它们没有检查,您确实只需要使用blur
事件,如果窗口移开则会触发该事件。您不应该使用在窗口关闭时执行的beforeunload
。
或者,如果用户按下 Ctrl 和 Alt 键(用于导出窗口),也可以使用户无效。我在接受采访时看到过这种测试。但如果我要成为一名学生,我会讨厌这样的考试! :P
我仍然可以通过使用其他设备来欺骗它: