This page is under 軟體開發.
抓取query string之後,當作ajax call的輸入參數包裝成json物件,成功執行後再將iteration的改變值再轉換成query string,以jQuery寫到page-nav物件,以動態網頁方式做為iteration的狀態儲存。
sample code,假設有一div內容為
<div id='page-nav'><a href='/ajaxserver/myajaxfunc?start=0&limit=10&userid=5'></a></div>
$ajaxfunc = $("#page-nav > a"); var o = parseUri.options; var items = parseUri($ajaxfunc.attr("href")); var query = items[o.q.name]; ajaxurl= items["path"]; var start = parseInt(query["start"]); var limit = parseInt(query["limit"]); //var cbFunc = query["cb"]; var action = query["action"]; var actionparams = query["actionparams"]; var $container = jQuery("#page-nav").parent(); var jsondata = eval('(' + array2json(query) + ')'); jQuery.ajax({ url: ajaxurl, data: jsondata, success: function(response) { if(response != ""){ var e = document.createElement('div'); $e = jQuery(e).append(response).appendTo($container); docobj.AfterIteration(e, action, actionparams); $container.imagesLoaded( function(){ $container.masonry('appended', $e); }); //make new iteration query["start"] = start+limit; var querystring = makeQS(query); $ajaxfunc.attr("href", ajaxurl+"?"+querystring); } else { scrolleventlock =false; jQuery("#page-nav").remove(); } } });