2012-09-11 5 views
1

jQuery 모바일 및 PhoneGap (1.9.0)을 사용하여 Windows Mobile 7 응용 프로그램을 개발 중입니다. 응용 프로그램에서 여러 HTML 페이지가 있고 모든 페이지의 데이터가 JSON 구문 분석을 통해로드되고 일부 데이터의 저장 공간이 필요합니다. 그래서 데이터 저장소에 localStorage를 사용합니다 (Windows 브라우저가 아직 phonegap을 통해 데이터베이스를 지원하지 않기 때문에). 그리고 Windows 브라우저에서 로컬 스토리지는 phonegap의 deviceready 이벤트에서만 작동합니다.

document.addEventListener("deviceready", mymethod, false); 

function mymethod(){ 

} 

모든 것은 잘 작동합니다. 페이지간에 이동하면 먼저 흰색 화면이 나타나고 새 페이지가 나타납니다. 보기가 안좋아.

나는 화면을 탐색하기 위해 (모든 방법은 페이지 사이를 탐색에서 미세하지만 지연 작동)

window.location.href='page2.html'; 사용합니다.

하지만이 사라집니다

$.mobile.changePage("page2.html"); 

다음 흰색 화면을 사용하지만 내 deviceready 방법은 작동하지 않으며 일부 정적 데이터 (머리글과 바닥 글) 빈 화면이 올 것이다 때. 내가 틀린 곳을 말해줘. $.mobile.changePage("page2.html");을 어떻게 사용해야하며 다음 페이지에 로컬 Storage 또는 json 파싱의 콘텐츠가로드됩니다. 또는 흰색으로 번쩍이는 화면없이 window.location.href='page2.html';을 사용하십시오.

여러분 모두 내 질문을 이해하시기 바랍니다.
이 문제에 대한 해결책이 있습니까?

+0

@jer - 꽤 많은 더 많은 것을 당신은 이미 게시물을 편집하는 경우 당신은 모든 문제를 해결 있는지 확인합니다 ... 편집 한 수 있습니다 ... – Lix

답변

1

$.mobile.changePage("page2.html");을 사용하면 jqm이이 페이지를 Ajax로로드하므로 좋은 전환을 할 수 있습니다. 페이지에 머물러있을 때 deviceready 이벤트가 다시는 없지만 페이지가 표시되면 pageshow 이벤트를 잡을 수 있습니다.

(워드 프로세서 : http://jquerymobile.com/demos/1.1.1/docs/api/events.html)

$('div').live('pageshow',function(event, ui){ 
    alert('This page was just hidden: '+ ui.prevPage); 
}); 
+0

하지만 내 JSON 요청 및 localStorage는 어떻습니까? 윈도우 전화에서 localStorage는 deviceready 이벤트에서만 작동합니다. – theLazyFinder

+0

시도했지만 동적 데이터가로드되지 않았습니다. 정적 머리글과 바닥 글만 표시됩니다. – theLazyFinder

+0

따라서 deviceReady 이벤트에서 localStorage에 대한 유효한 참조를 얻을 수 있다면 나중에 액세스 할 수있는 (전역) 변수에 할당 할 수 없습니까? 나는 deviceready 이벤트가 활성화 된 상태에서만 흰색을 사용할 수 있다고 믿을 수 없습니다 ... – ivy

관련 문제