我已經在使用IE Mobile的設備上編寫了脫機使用的應用程序(使用Google Gears)。這些設備正在經歷內存泄漏,使得設備隨着時間的推移變得不可用。如何防止IE Mobile中的內存泄漏?
問題頁面從本地Gears數據庫中獲取條目,併爲每個條目的表格提供每行最後一列中的鏈接以打開條目(該鏈接只是onclick =「open('myID')」 )。當他們完成輸入時,他們返回到桌子,這是重新呈現。這張桌子的重複建築似乎是問題所在。主要是onclick事件。
表本質上是產生這樣的:
var tmp="";
for (var i=0; i<100; i++){
tmp+="<tr><td>row "+i+"</td><td><a href=\"#\" id=\"LINK-"+i+"\""+
" onclick=\"afunction();return false;\">link</a></td></tr>";
}
document.getElementById('view').innerHTML = "<table>"+tmp+"</table>";
我對內存泄漏的常見原因閱讀並嘗試設置onclick事件的每一個環節,以「空」重新繪製表之前但它似乎仍然泄漏。
有人有什麼想法嗎?
在它的事項的情況下,該功能是從每一個環節叫看起來是這樣的:
function afunction(){
document.getElementById('view').style.display="none";
}
將構成以任何方式循環引用?
傑克
回來?關閉瀏覽器完全釋放內存。當您重新打開它但不釋放內存時,執行「軟關閉」可提高性能。 該設備是一個XDA軌道2. – 2009-09-21 13:46:09