IE Mobile을 사용하는 기기에서 오프라인 (Google Gears 사용) 애플리케이션을 작성했습니다. 장치는 시간이 지남에 따라 장치를 사용할 수 없게되는 속도로 메모리 누수가 발생합니다.IE Mobile에서 메모리 누수를 방지하려면 어떻게합니까?
문제 페이지는 로컬 Gears 데이터베이스에서 항목을 가져 와서 각 항목의 테이블을 각 행의 마지막 열에있는 링크와 함께 렌더링하여 항목을 엽니 다 (링크는 onclick = "open ('myID') '). 엔트리가 끝나면 테이블로 돌아갑니다.이 테이블은 RE 렌더링됩니다. 문제가있는 것처럼 보이는이 테이블의 반복되는 건물입니다. 주로 onclick 이벤트.
표는 다음과 같이 본질적으로 생성됩니다 나는 메모리 누수의 일반적인 원인에 읽었과에 "널 (null)"다시 렌더링 테이블 전에 각 링크의 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>";
그러나 그것은 아직도 누출하는 것처럼 보인다.
아무도 아이디어가 없습니까? 함수는 각각의 링크를 통해 호출되는 것이 중요한 경우
은 다음과 같다 : 어떠한 방식으로 순환 참조 구성
function afunction(){
document.getElementById('view').style.display="none";
}
을겠습니까?
제이크
돌아온다? 브라우저를 닫으면 메모리가 완전히 해제됩니다. "소프트 닫기"를 실행하면 다시 열 때 성능이 향상되지만 메모리를 해제하지는 않습니다. 이 장치는 XDA 궤도 2입니다. –