1

我在 JQM 页面中有导航栏:

<div data-role="navbar">
    <ul>
        <li><a href="#about" class="ui-btn-active ui-state-persist">About</a></li>
        <li><a href="#details">Details</a></li>
    </ul>
</div>

两个页面都一样navbar

我有如下返回按钮:

<a href="#" data-icon="back" data-rel="back" >Back</a>

问题是在查看页面之前后退按钮不会转到上一页,#details 和#about 页面包含在历史记录中。如何忽略或排除这两个页面,以便单击后退按钮将转到首先加载它的页面。

4

3 回答 3

0

您不能因为“data-rel=back”使用浏览器历史记录,因此:

  1. 从“主要”开始
  2. 点击“关于”
  3. 点击“详情”
  4. 点击“关于”
  5. 单击“返回”-返回到“详细信息”
  6. 单击“返回” - 返回“关于”
  7. 单击“返回” - 将您返回到“主要”,哇哦!

我建议你删除“关于”和“详细信息”页面上的导航栏,这样你只有一种方法可以去:回到你调用它的页面。

于 2012-12-05T04:35:42.533 回答
0

试试这个解决方案:

<script>
$('#about').click(function(){
    $('#contentDiv').html('Your content');
});
$('#details').click(function(){
    $('#contentDiv').html('Your content');
});
</script>
<body>
<div data-role="page" id="main">
    <div id="contentDiv" data-role="content">
    </div>
    <div data-role="navbar">
        <ul>
            <li><a id="about" class="ui-btn-active ui-state-persist">About</a></li>
            <li><a id="details">Details</a></li>
        </ul>
    </div>
</div>
</body>

使用此解决方案时,您将确保单击后退按钮时,您会转到上一页。

于 2012-12-05T11:21:20.523 回答
0

最简单的方法是让您的 about 和 details 页面为 jquery 移动对话页面(请参阅文档)。

<a href="foo.html" data-rel="dialog">Open dialog</a>

历史记录中不跟踪对话页面,这应该可以实现您正在寻找的目标。

于 2012-12-05T08:53:17.277 回答