jquery,jquery手机浏览器后退按钮问题

jquery,jquery手机浏览器后退按钮问题,jquery,iphone,browser,mobile,back,Jquery,Iphone,Browser,Mobile,Back,这是我在jquery手机页面上遇到的一个自动页面转换问题。谢谢你的帮助 我在A页,我点击一个链接,然后我进入B页。现在我点击“B”页中的链接进入C页 在C页,我点击浏览器后退按钮(iphone在左下角),它会根据需要将我带到B页。现在,我点击同一个链接返回Page C.,浏览器会闪烁页面“C”,但是很快自动(用jQuery移动加载图片在中间做过渡幻灯片),它加载页面“B”。当我查看顶部的URL时,我仍然是pageC.html URL,而不是B。只有B页的内容 我说得通吗?发生了什么事?请帮帮我

这是我在jquery手机页面上遇到的一个自动页面转换问题。谢谢你的帮助

我在A页,我点击一个链接,然后我进入B页。现在我点击“B”页中的链接进入C页

在C页,我点击浏览器后退按钮(iphone在左下角),它会根据需要将我带到B页。现在,我点击同一个链接返回Page C.,浏览器会闪烁页面“C”,但是很快自动(用jQuery移动加载图片在中间做过渡幻灯片),它加载页面“B”。当我查看顶部的URL时,我仍然是pageC.html URL,而不是B。只有B页的内容

我说得通吗?发生了什么事?请帮帮我

更多信息:我在用什么?

非常感谢

伙计

我想问题在于你的文件结构。
您正在使用jquery mobile library,但同时您正在使用两个页面进行转换,这将不起作用。

我遇到了同样的问题,并通过将hashListeningEnabled设置为false解决了这个问题

$.extend(  $.mobile , {
    ajaxEnabled      : false,
    hashListeningEnabled: false
});

我也有过类似的问题。向链接添加
data ajax=“false”
有时会有所帮助

比如说改变

`<a href="#" data-role="button" id="fix_link">Another Page</a>`
``

``

有很多地方可以阅读JQuery Mobile如何加载页面和使用导航,但我通过对此进行修补学到了最多,有时在某些情况下,
data rel=“external”

如果您未使用AJAX导航(即您将选项
$.mobile.ajaxEnabled
设置为false),JQuery mobile建议也禁用
$.mobile.pushstatenabled
,以解决这些浏览器问题:

注意:在构建jQuery移动应用程序时,如果Ajax导航系统在全局或单个链接上经常被禁用,我们建议禁用$.Mobile.pushstatenabled全局配置选项,以避免在某些浏览器中出现不一致的导航行为

要禁用它,请执行以下操作:

$(document).bind("mobileinit", function () {
  $.mobile.ajaxEnabled = false;
  $.mobile.pushStateEnabled = false;
});
$.extend($.mobile{ ajaxEnabled:false, HashListingEnabled:false });

这对我也很有用。在iphone5s上,我会浏览到一个页面(使用.pagecontainer(“change”)方法)。该页面是在客户端代码中动态生成的,因此它不是实际的URL。不管怎样,我第一次使用后退按钮时,它会工作的。第二次我导航到另一个页面时,会发生转换,然后该页面会快速刷新/重新加载。之后,后退按钮停止工作

在标签中实现这段代码对我来说很有用。确保将其放在jquery引用之后,但放在jquery移动引用之前。这真是一个令人沮丧的问题。我的标签如下所示:

    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
    $(document).bind("mobileinit", function () {
        $.mobile.ajaxEnabled = false;
        $.mobile.pushStateEnabled = false;
    });
</script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script src="phonebook.js"></script>

$(文档).bind(“mobileinit”,函数(){
$.mobile.ajaxEnabled=false;
$.mobile.pushStateEnabled=false;
});

请您发布您的代码剪报,以便我能更好地查看。对不起,伙计,我无法了解您的代码的确切问题。请看一下网上的文档,可能会对你有所帮助。你可以编辑你的问题,可以把你的代码放在代码块里。也可以检查你的电子邮件,我已经给你发了演示包供你参考。谢谢。使用多个页面是不可避免的。单页解决方案只有在不处理太多后端内容的情况下才能发挥作用。此外,在一个页面中填充所有内容也会增加移动页面的大小
浏览器后退按钮问题似乎一直存在。正如我看到的,jquerymobile.com页面上也存在同样的问题

这里是jquerymobile.com页面上概述该问题的另一个链接。听起来很相似。
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
    $(document).bind("mobileinit", function () {
        $.mobile.ajaxEnabled = false;
        $.mobile.pushStateEnabled = false;
    });
</script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<script src="phonebook.js"></script>