Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery mobile Jquery Mobile,覆盖后退按钮(浏览器或手机)_Jquery Mobile - Fatal编程技术网

Jquery mobile Jquery Mobile,覆盖后退按钮(浏览器或手机)

Jquery mobile Jquery Mobile,覆盖后退按钮(浏览器或手机),jquery-mobile,Jquery Mobile,在我的Jquery移动应用程序中,我想覆盖浏览器或手机后退按钮(Android设备上提供)。 在#仅欢迎页面上,并且仅当上一个页面id为#登录页面时,我希望后退按钮跳过#登录页面(甚至不调用关联的js)并转到#解释页面 你能帮我做到这一点吗 现在我做了以下操作,但它把一切都搞砸了,因为它似乎要加载#登录页面 $(document).on('pagebeforeshow', '#welcome-page', function(event, docdata){ //jqm 1.4 console.

在我的Jquery移动应用程序中,我想覆盖浏览器或手机后退按钮(Android设备上提供)。 在#仅欢迎页面上,并且仅当上一个页面id为#登录页面时,我希望后退按钮跳过#登录页面(甚至不调用关联的js)并转到#解释页面

你能帮我做到这一点吗

现在我做了以下操作,但它把一切都搞砸了,因为它似乎要加载#登录页面

$(document).on('pagebeforeshow', '#welcome-page', function(event, docdata){  //jqm 1.4
console.log('previous page was ' +docdata.prevPage.attr('id'));
    if ( docdata.prevPage.attr('id') == 'signin-page') {
        $(window).on("navigate", function (event, data) {
            var direction = data.state.direction;
            if (direction == 'back') {
                event.preventDefault();
                console.log('back button pressed');
                //$( "body" ).pagecontainer( "change", "#explanation-short", { transition: "fade" });
            }
            $(window).off("navigate");
        });
    }
});

DOM中的上一页还是历史记录中的上一页?检查这个Hi@Omar,这个应用程序是“单页应用程序”,所以我猜它是DOM中的上一页。谢谢你的代码,我刚刚在我的应用程序中测试了它,似乎PageContainerBeforChange没有被激活…(我使用的是JQM 1.4.2),知道为什么吗?好的,我在这里看到了你的博文:PageContainerBeforChange只在JQM 1.4.3中工作。好的,我已经将我的JQM版本更新为1.4.3(顺便说一句,我应该知道的任何重大变化??),现在它几乎可以工作了……但是即使用户不按后退按钮就从
欢迎页面
转到
登录页面
,它也会启动(应用程序中有一个地方会发生这种情况…)我也有一个非常奇怪的行为:第一次从登录页面转到欢迎页面,然后按back,转到解释简短,这很好。但是第二次我进入登录页面,然后进入欢迎页面,如果我按back,它会进入解释简短页面,并立即返回欢迎页面……这可能是因为pagecontainerbeforechange被触发了两次吗?是否存在只触发一次的事件?