2012-08-13 4 views
2

PhoneGap 앱에 jQuery Mobile을 사용하고 있습니다. 나는이 같은 내부 페이지를로드 할 때 :내부 페이지를로드 할 때로드 중 메시지 표시

$.mobile.changePage('#loginPage', { transition: "none"}); 

을 응용 프로그램은 다음 fews 순간 로그인 페이지로 페이지 변경을 기다립니다. 페이지가로드되는 동안로드 메시지를 표시 할 수 있습니까? 나는 changePage가 showLoadingMsg 옵션을 가지고 있지만 외부 페이지에서만 작동한다는 것을 알고있다.

답변

0

pagebeforecreate 또는 pagebeforeshow 이벤트에 대한 사용 $.mobile.showPageLoadingMsg(); (귀하의 경우에 따라) 다음 $.mobile.hidePageLoadingMsg(); 이벤트 pageshow합니다. 다음과 같은 것 :

$(document).on(
    'pageshow', 
    '#loginPage' 
    function() 
    { 
     $.mobile.hidePageLoadingMsg(); 
    } 
); 
+0

이것은 작동하지 않는 것처럼 보입니다. changePage 함수가 모든로드 메시지를 파기하는 것처럼 느껴집니다. $ .mobile.showPageLoadingMsg(); changePage 바로 전에 또는 pagebeforecreate 및 pagebeforeshow에 바인드하고 페이지에서 모든 hidePageLoadingMsg()를 삭제해도 여전히 표시되지 않습니다 ... 그것은 나를 미치게합니다. – Timm

+0

나는 문제의 일부가 무언가가 눌러지고 자바 스크립트가 호출 된 후 약 0.5 초가 지연된다고 생각한다. 그 주위에는 아무런 방법이 없다고 생각한다. – Timm

+1

그래서 전체적인 문제는 실제로 위의 내 의견이었다. 실제 페이지 로딩은 즉석입니다. 위에서 언급 한 지연은 vclick에 바인딩하는 버튼의 클릭 이벤트에 바인딩하는 대신 제거 할 수 있다는 것을 알았습니다. http://forum.jquery.com/topic/how-to-remove-the-300ms-delay-when-clicking-on-a-link-in-jquery-mobile – Timm

관련 문제