是否可以通过jQuery代码激活数据添加后退按钮?

时间:2014-06-18 10:29:46

标签: javascript jquery html jquery-mobile

我正在使用jQuery 1.9.1和jQuery Mobile 1.3.1,我有几个页面定义如下:

<div id="q1" data-role="page" data-add-back-btn="false" data-back-btn-text="Home">
    <div data-role="header" data-position="fixed" data-tap-toggle="false">
         <h1><Title</h1>
    </div>
    <div class="info-wrapper"></div>
    <div data-role="content"></div>
</div>

关键是稍后我想激活设置为false的后退按钮,并更改设置为Home的按钮文本。我想通过jQuery代码来完成它们。有可能吗?

1 个答案:

答案 0 :(得分:0)

不能这样做,因为按钮应该在pagecreate期间创建。

您有两种选择:

  1. 创建按钮并隐藏它。在需要时显示它。

    /* hide it */
    $.mobile.activePage.find(".ui-header [data-rel=back]")
        .addClass("ui-screen-hidden");
    
    /* show it */
    $.mobile.activePage.find(".ui-header [data-rel=back]")
        .removeClass("ui-screen-hidden");
    
  2. 动态添加按钮到您想要的页面。

    $(document).on('pageinit', "#home", function () {
        $(".foo").on("click", function () { /* you can use any other method */
            /* button */
            var backbtn = '<a href="#" data-icon="arrow-l" data-iconpos="left" data-rel="back">Back</a>';
            /* add it to active page */
            $.mobile.activePage.find(".ui-header")
                .append(backbtn)
                .end()
                .trigger('pagecreate'); /* button won't be created without this */
        });
    });
    
      

    <强> Demo