Jquery Mobile:添加下一个和上一个按钮

时间:2013-02-27 19:48:48

标签: javascript jquery html5 css3 jquery-mobile

我正在开发一个在html页面上有数百页的项目。

我非常担心使用<a href=#ID" >导航这些子页面以在子页面之间前进。有没有办法在每个子页面中使用一个按钮,这将把我带到下一个子页面,这样我就不必将每个子页面ID写入每个子页面中。#Next;#34; Next&#34;按钮?

2 个答案:

答案 0 :(得分:6)

后退按钮:

jQuery Mobile为每个页面上的后退按钮提供了开箱即用的解决方案。

<script>
    $(document).on('mobileinit', function () {
        $.mobile.ignoreContentEnabled = true;
    });
</script> 

此代码必须放在jQuery Mobile初始化之前,如下所示:

<head>
  <title>Share QR</title>
  <meta name="viewport" content="width=device-width, initial-scale=1"/>     
  <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />   
  <script>
    $(document).on('mobileinit', function () {
        $.mobile.ignoreContentEnabled = true;
    });
  </script>    
  <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
</head>

下一步按钮:

这个有点棘手,自动生成的下一个按钮只有在你有1个html的多页解决方案时才能工作。这将为您提供下一页的信息,因此要创建下一个按钮,请使用以下代码:

$(document).on('pagebeforeshow', '[data-role="page"]', function(){       
    var nextpage = $(this).next('div[data-role="page"]');
    if (nextpage.length > 0) {    
        $.mobile.activePage.find('[data-role="header"]').append($('<a>').attr({'href':'#'+nextpage.attr('id'),'data-theme':'b'}).addClass('ui-btn-right').html('Next').button());
    }  
});  

工作示例:

以下是此解决方案的工作示例:http://jsfiddle.net/Gajotres/BnB7X/

如果您有更多问题,请随时提出。

答案 1 :(得分:0)

我这样解决了:

$(document).ready(function() {

    $('.nextBtn').click(function() {
        $page = $(this).closest('div[data-role="page"]').next();
        $.mobile.changePage( $page, { transition: "slide", changeHash: false });
    });

    $('.prevBtn').click(function() {
        $page = $(this).closest('div[data-role="page"]').prev();
        $.mobile.changePage( $page, { transition: "slide", reverse: true, changeHash: false });
    });

});

然后将上一个/下一个按钮放在您喜欢的位置,只需确保上一个按钮类prevBtn和下一个按钮类nextBtn。

例如:

<a href="#" class="ui-btn prevBtn">Previous</a>
<a href="#" class="ui-btn nextBtn">Next</a>