我进行了一些有关如何在单击浏览器的后退按钮时进行订阅的研究,但不幸的是,我找不到适合我问题的正确答案
我尝试这样做:
var $window = $(window);
$window.on('beforeunload', function()
{
commitFieldChanges();
});
我为此需要JS
而另一个解决方案是
$(window).bind('beforeunload', function(){
return '';
});
但是,所有这些都不起作用,因为我的应用程序是单页应用程序。因此,当单击“后退”按钮时,页面实际上并未加载,因为我们使用#在URL中的应用程序中导航,所以您觉得呢?对我的问题有什么建议吗?
这是我目前在我的应用中使用的一种方法,用于检测某个页面上的后退按钮,该按钮旨在支持台式机和移动设备上的现代跨浏览器。
主页
var isFromView = false;
$(function() {
// Check if browser supports LocalStorage
if(typeof(Storage) !== 'undefined') {
var currentValue = localStorage.getItem('fromSource');
if (currentValue && currentValue === 'view') {
// Set isFromDetail to true
isFromView = true;
}
else {
localStorage.removeItem('fromSource');
}
try {
// Set fromSource in localStorage.
localStorage.setItem('fromSource', 'home');
}
catch (err) {
// Need this for safari mobile private mode !!
}
}
});
观看页面
$(function() {
// Check if browser supports LocalStorage
if(typeof(Storage) !== 'undefined') {
try {
// Set fromSource in localStorage.
localStorage.setItem('fromSource', 'view');
}
catch (err) {
// Need this for safari mobile private mode !!
}
}
});
++:我已经使用了历史记录API来对后退按钮执行操作。但是在支持某些移动设备浏览器方面没有成功。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句