0

我使用js显示和隐藏一些元素的页面。但是当我使用浏览器返回时出现问题。

<div data-role="page">
    <div class="step1">
       step1 content...
       <a href="javascript:void(0)" class="nextBtn">next</a>
    </div>
    <div class="step2" style="display:none">
       step2 content...
       <a href="javascript:void(0)" class="okBtn">next</a>
    </div>
    <div class="step3" style="display:none">
       step3 content...
       <a href="javascript:void(0)" class="goBtn">next</a>
    </div>
    <script>
    some script...
    $('.nextBtn').click(function(){
        ok = do something...
        if(ok){
          $('.step1').hide();
          $('.step2').show();
        }
    });
    $('.okBtn').click(function(){
        ok = do something...
        if(ok){
          $('.step2').hide();
          $('.step3').show();
        }
    });
    </script>
</div>

但是当我使用浏览器后退按钮时,出现问题。我的意思是当“step2”显示时,我点击后退按钮,我想去“step1”显示。

4

2 回答 2

1

如果您希望.step1在加载页面时可见,这里是代码。

$(document).on('pagebeforeshow', '[data-role="page"]', function () {
 $('div.step1').show();
});
于 2013-03-27T14:49:44.393 回答
0

我建议您使用https://github.com/browserstate/History.js 来操作浏览器的历史记录

于 2013-03-27T13:05:29.237 回答