嗨我正在使用jqueryMobile SPA模板作为我的手机间隙应用。
对于网络版,我的要求是在点击浏览器后退按钮时禁用或向用户显示警告消息。我搜索了我的要求,但没有找到任何理想的解决方案。请指导我。感谢。
答案 0 :(得分:2)
要禁用我使用的浏览器的后退按钮
$(window).on("navigate", function (event) {
event.preventDefault();
window.history.forward(1);
});
但是在按下f5时会产生错误并将我重定向到登录页面。因此我禁用了f5,ctrl + R按钮。
var ctrlKeyDown = false;
$(document).on("pagecreate", function (){
$(document).on("keydown", keydown);
$(document).on("keyup", keyup);
});
function keydown(e) {
if ((e.which || e.keyCode) == 116 || ((e.which || e.keyCode) == 82 && ctrlKeyDown))
{
// Pressing F5 or Ctrl+R
e.preventDefault();
} else if ((e.which || e.keyCode) == 17) {
// Pressing only Ctrl
ctrlKeyDown = true;
}
}
function keyup(e){
// Key up Ctrl
if ((e.which || e.keyCode) == 17)
ctrlKeyDown = false;
}
它完全满足了我的要求。谢谢Suhas :)。
答案 1 :(得分:1)
试试这个 - FIDDLE
$(window).on("navigate", function (event, data) {
var direction = data.state.direction;
if ( !! direction) {
alert(direction);
}
});
请参阅以下链接。
或者您可以使用
window.history.forward(1);
按下后退按钮时。但它加载然后重定向不正确。