PageCreate on Refresh

时间:2013-08-12 19:11:20

标签: jquery jquery-mobile

好的,jquery mobile的大学新任务

我使用ajax调用从外部cms中提取数据。因为它使用ajax调用动态插入主屏幕的按钮,并创建和链接到这些按钮的相关页面....我的问题是当我刷新子页面例如资格它自动带我回家。 ..我在ajax调用中有#home.trigger(pagecreate),否则我的按钮不会呈现为正确的按钮而不仅仅是链接......

我认为在刷新子页面时整个index.html会刷新,因此页面创建会再次触发...让我回家...但是网址仍指向#qualifications ...如果我导航到该应用程序的另一部分,并点击后退按钮(data-rel =“后退”)它尝试将我返回到#qualifications页面,即使显示的最后一页是主页...并且最终根本没有呈现任何页面....

我如何设置一个函数来捕获刷新...导航回上一页(从浏览器历史记录)并页面创建正确的页面......?

如果问题很复杂,我很抱歉...第一次发帖!从技术上讲,我的意思是成为项目中的图形人......:)

总的来说,我试图使用ajax调用来动态构建整个站点...

var nextpage []用于创建url ajax调用cms中的下一级别...任何更聪明的方式?

$.ajax(
{
    url: "http://myurl/api/list",
    type: 'get',
    dataType: 'jsonp',
    success: function(data)
    {
        if(data.result == 'success')
            {

                var homepage=$('<div id="home" data-role="page" data-title="myguide : Home" data-theme="b">'
                    +'<div data-role="header" data-position="fixed">'
                    +'<h1>Home</h1></div>'
                    +'<div id="logo">'
                    +'<img src="images/iiiguide_logo.png"/></div>');


                    homepage.appendTo($.mobile.pageContainer);
                    $.mobile.changePage( homepage );

                    var pages=[];
                    var nextpage=[];
                    $.each(data.data,function(key,val)
                    {
                            var homebuttons=['<a href="#'+ val.label.replace(/\s/g, "")
                            +'" data-role="button" data-icon="arrow-r"'
                            +'data-iconpos="right">'+val.label+'</a>'];
                            $('#home').append(homebuttons);



                            var pages=$('<div id="'+ val.label.replace(/\s/g, "") + '"'
                            +'data-role="page" data-title="myguide :'+val.label.replace(/\s/g, "") + '" data-theme="b">'
                            +'<div data-role="header" data-position="fixed">'
                            +'<a href="#home" data-icon="home">Home</a>'
                            +'<a href="#" data-icon="back" data-rel="back" >Back</a>'
                            +'<h1>'+ val.label.replace(/\s/g, "") +'</h1></div>'
                            +'<div id="logo">'
                            +'<img src="images/iiiguide_logo.png"/></div></div>');
                            pages.appendTo($.mobile.pageContainer);                          

                            nextpage.push('http://myurl/api/list?category_id='+val.id);

                    });


                    $('#home').trigger("pagecreate");                


            }

        }

 });

0 个答案:

没有答案