0

我正在尝试使用 JavaScript (PhoneGap) 开发移动 Web 应用程序,问题如下:

我有 3 页 javascript 将动态创建页面中包含的 html,第一页包含 butoon 1

  第二页包含按钮 2

  第三页包含按钮 3

我们点击按钮一我们转到第二页,点击第三页上的按钮 2 通行证。

一开始一切顺利,但是如果我回到第1页,我会转到第二页,程序直接显示第1页,而不经过前两个。

我想因为,我应该删除以前的事件,或者缓存你说的内容?

第 1 页

$('#header-left-container').prepend(results.rows.item(i).LibelleTypeTravail +"" +
                "<br>" +
                "<img src='../js/images/add.png' name="+results.rows.item(i).IdTypeTravail+" >" +
                "<textarea rows='6'  cols='60' id='"+results.rows.item(i).IdTypeTravail+"'   name='"+results.rows.item(i).LibelleTypeTravail+"'> </textarea><br><br>" );


 $('img').live('tap',function(e)
         {

     //-------------Pass param with localstorage

         window.localStorage.setItem("id_grp", id_grp_tr);
         window.localStorage.setItem("id_travail", e.target.name);

            $.mobile.changePage('../prestation_html/list_rubrique.html' , {role: 'dialog', transition: 'flip'});
         }
         );

第2页

$('#lbtn').append('<input type="button" value="Consulter" onclick="go()"  id="Consulter">');

function go()
    {

        if(s == 0)
            {
            var sel_id_rub = $('input[name=opt1]:checked').attr('id');//ID of Rubrique

             window.localStorage.setItem("id_rub", sel_id_rub);       //Id Rubrique
        //alert(sel_id_rub);

             liste_Phrase();

            }

第 3 页

    $('#lbtn').append('<input type="button" value="Ajouter"  id="ajouter">');

$('#ajouter').live('click',function(e)
         {
        // alert( $("label[for='" + ( $('input[name=opt1]:checked').attr('id') ) + "']").text() );
     window.localStorage.setItem("phrase", $("label[for='" + ( $('input[name=opt1]:checked').attr('id') ) + "']").text());       //Id Rubrique

     $.mobile.changePage('../prestation_html/etape'+window.localStorage.getItem("id_grp")+'.html');
         }
         );
4

1 回答 1

1

简单的方法是使用在现代浏览器中利用 HTML5 History/State 的插件:

https://github.com/browserstate/History.js/

于 2012-11-27T10:02:17.710 回答