我正尝试使用javascript onbeforeunload事件来询问用户是否要退出该页面,但我不希望该事件触发(编辑:“the事件“是弹出的对话框,要求用户单击”确定“离开网站或单击”取消“以保留当前页面),如果用户点击后退按钮,因为它们很可能会留在我的网站上。检查用户是否在浏览器中点击返回按钮
那么有没有一种方法可以判断用户是否使用javascript或PHP命中了后退按钮?
我已经得到了使用隐藏的iframe,只有在IE的解决方案,但我需要的东西,可以为Firefox,Chrome浏览器和Safari如果可能的话。
编辑:我的IE解决方案的工作原理是因为当用户点击后退按钮时,iframe被发回,但父页仍保留在同一位置。从这我可以告诉用户确实击中了后退按钮,因此我使用了历史记录()。这个小黑客在任何其他浏览器中都不起作用(据我所知),所以我正在寻找一个跨浏览器的解决方案。
tl; dr我正在使用window.onbeforeunload弹出一个询问用户是否要离开我的网站的对话框。当用户点击后退按钮时,我不想让它弹出。 我如何知道用户在浏览器中点击了后退按钮?
感谢, 里克
什么是射击事件?如果您在用户点击后退按钮时需要保存信息,是否可以将一些信息保存在cookie中或HTML5中有新的“localStorage”和“sessionStorage”对象可供使用。 http://www.w3schools.com/html5/html5_webstorage.asp – ptpaterson 2010-12-20 22:04:14
在IE中工作的解决方案?怎么样?似乎hacky – epascarello 2010-12-20 22:06:32
简单的解决方案:不要试图让人们留在您的网站上。这对用户体验是中断的。也就是说,如果他们离开没有保存的页面或类似的东西,那么确认即可。 – zzzzBov 2010-12-20 22:55:17