私は完全な ajax Web サイトにまったく慣れていないことを認めているため、間違いを犯していることは間違いありません。
問題はこれです:http://lamovida.arabianessence.com
すべてのページは、この関数を使用して $.ajax 呼び出しで読み込まれます
function getAjaxPage() {
$('a.ajaxc').click(function() {
$("li.page_block").find(".wrapper").fadeOut(400).remove();
hideSplash();
var $thishref = $(this).attr('href'),
$thisurl = $thishref.replace("#!/",""),
$urlArr = $thisurl.split('-'),
$urlOk = $urlArr[0],
$dataOk = $urlArr[1];
$.ajax({
url : $urlOk + ".php",
data : 'id='+$dataOk,
success : function (data,stato) {
$("#content").css({opacity:1}).fadeIn(400);
$("li.page_block").html(data);
$("li.page_block").css('visibility', 'visible');
$("li.page_block").find(".wrapper").css({opacity:0}).show().animate({opacity:1},1000);
var $whgt = $(".wrapper").height(),
$ctop = ( ( $(window).height() - $whgt ) /2 )-40;
$("#content").stop().animate({height: $whgt+40, top: $ctop},1000);
$("li.page_block").css('padding-top',20);
$('.scrollable').jScrollPane();
$('.slider>ul>li').jScrollPane();
getAjaxPage();
},
error : function (richiesta,stato,errori) {
alert(errori);
}
});
});
}
この関数が呼び出されるたびに、コンテンツのローダーが遅くなり、約 20 回のクリックの後、状況が悪化し、読み込み時間がどんどん長くなります。
Google Chrome のタイムラインを使用して状況を分析しようとしましたが、クリックするたびにブラウザーがより多くのメモリを使用することがわかりました。getAjaxPage(); にコメントすると 「成功」セクションの行で状況は改善し始めますが、もちろん、内部ナビゲーションはすべて失われます。
この問題を回避するにはどうすればよいですか?
みんなに感謝します!