基本上我正在使用phonegap创建一个jquery-mobile应用程序,虽然我认为框架非常好,但我对它相对较新,而且我正在重新发现存储信息的框架问题。这在这个例子中变得明显:
由于框架内存填充导致应用程序变慢/崩溃:
我的应用程序将从JSON文件中读取各种信息,并在文件中动态创建页面。它完全按照预期工作,但有这个javascript函数有10个不同的html文件,当一个在这些之间导航时,应用程序很快就会变慢并最终崩溃。我已经研究了这个问题一段时间了,并且认为这是DOM的一个问题,我看了Page,但仍然无法解决问题。这是javascript方法,仅作为参考
$(document).on("pageinit", "#Page1", function(){
var info="";
var dpages="";
var pageno=1;
var imp= "Json/example.json";
$.getJSON(imp, function(data) {
$.each(data.tcontent, function(i, item) {
if(item.Name=='Example'){
var search=item.Variations;
$.each(search, function(j, subitem) {
info += '<a href="#Paged'+ pageno + ' " data-role="button" data-mini="true" rel="external">'+ subitem.condition +'</a><br>';
dpages += '<div data-role="page" data-theme="a" id="Paged' + pageno + '" data-dom-cache="true"> <div data-role="header" data-theme="c"><a data-rel="back" data-role="button" class="ui-btn-left" data-transition="flip" data-icon="back"> Back</a> <h2>'+ subitem.condition +'</h2> </div> <div data-role="content" data-theme="c" id="Paged '+ pageno +'_Content"> <p class="infotexttitle">Likely Organisms: </p> ' + subitem.organisms + ' <p class="infotexttitle"> Antimicrobial & Dosage </p> ' + subitem.antimicrobial + ' <p class="infotexttitle"> Alternative Antimicrobial: </p> ' + subitem.alternative + ' <div data-role="collapsible" data-mini="true" data-collapsed-icon="arrow-r" data-expanded-icon="arrow-d" data-iconpos="right" data-theme="d" data-content-theme="d"> <h3> Comments: </h3> <p class="guidelinetext"> ' + subitem.comments + ' </p></div> </div> <div data-role="footer" data-theme="c"> <h2>(c) Darragh O Connor </h2></div> </div></div>';
pageno++;
});
}
$("#texts").empty().append(info).collapsibleset().trigger('create');
$.mobile.pageContainer.append(dpages);
}); }); });
我认为每次在文件之间导航时,可能会有一种简单的方法来擦除存储的信息。如果有人能够对这种情况有所了解,那将非常感激。
谢谢!