1

好的,jquery mobile 的大学作业新手

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

我认为在刷新子页面时,整个 index.html 都会被刷新,因此 pagecreate 会再次被触发......带我回家......但 url 仍然指向#qualifications......如果我导航到另一个部分应用程序,然后点击后退按钮 (data-rel="back") 它会尝试将我返回到#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");                


            }

        }

 });
4

0 回答 0