2014-09-25 14 views
3

다중 페이지 (data-role = "page") html을 만들었습니다. 페이지 1 처음에는 사용자 이름 입력란에 사용자 이름을 기입하십시오. 로컬 저장소페이지 2로 리디렉션됩니다.. 이벤트가 문제가를 작성하지 입니다 여기에 페이지 2 발생하므로 pagebeforeshow 다시 로컬 스토리지를 확인하는 응용 프로그램을 열 제대로 작동하는 것은 존재 여부를 에서 숨기기PAGE1까지입니다. 이 문제를 해결하는 방법. 여기에 작업입니다 Fiddle멀티 페이지에 페이지가 표시되지 않음

* 참고 바이올린에서는 텍스트를 입력하고 제출 한 다음 페이지를 새로 고칩니다. 스크립트가

<div data-role="page" id="page1"> 
    <div data-role="header"> 
     <h1>page 1 from html</h1> 
     <a >Go</a> 

    </div><!-- /header --> 
     <div data-role="content"> 
      <label>Type text to store in LocalStoreage</label> 
      <input type="text" id="name" /> 
      <button id="sub">Submit</button> 
     </div> 
    </div><!-- /page --> 
    <div data-role="page" id="page2"> 
    <div data-role="header"> 
     <h1>Page 2</h1> 
     <a href="#page1">Back</a> 
    </div><!-- /header --> 
     <div data-role="content"> 
      <p> Hi i am second page</p> 
     </div> 
    </div><!-- /page --> 

: 내가 이 보여 싶지 않아

$(document).on("pagebeforeshow","#page1",function(){ 
    $("#page1").hide(); 
    var locStorage = localStorage.getItem("lastname"); 
    //alert(locStorage); 
    if(locStorage){ 
     $.mobile.changePage("#page2"); 
    }else{ 
     $("#page1").show(); 
    } 
}); 

    $(document).on("click","#sub",function(){ 
     // alert($("#name").val()); 
    localStorage.setItem("lastname", $("#name").val()); 
     $.mobile.changePage("#page2"); 
    }); 

코멘트 $("#page1").hide();PAGE1이 후을 보여줍니다이 줄 만 이동하면 페이지 2에 같은 html로입니다 localstorage가 사용 가능한 경우 페이지 1.

편집 : 설정 $.mobile.autoInitialize = false; 로딩 전에 JQuery와 모바일, 심지어 몇 초 동안 PAGE1로드하지만. 이 같은

+0

[This (http://stackoverflow.com/questions/10792660/how-to-decide-which-page-to-load-first-on-jquery-mobile) 도움이 될 수 있습니다. –

+0

@MysticMagic 답장을 보내 주셔서 감사합니다. http://jsfiddle.net/5mL8yLu2/7/ 이제 몇 초 동안 page1을로드 한 다음 페이지 2로 리디렉션 한 후 – Vini

답변

0

시도 뭔가,

windows.location.href="index.html#page2" 

또는

windows.location.href="#page2" 

대신

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

의 그럼이 코드를 시도 할 수

$(document).on("pagebeforeshow","#page1",function(){ 
var locStorage = localStorage.getItem("lastname"); 
//alert(locStorage); 
if(locStorage!=null){ 
    windows.location.href="#page2"; 
} 
else{ 
    windows.location.href="#page1"; 
} 
}); 

$(document).on("click","#sub",function(){ 
    // alert($("#name").val()); 
localStorage.setItem("lastname", $("#name").val()); 
    windows.location.href="#page2"; 
}); 
+0

을 제출할 수 있습니다. 내 앱에서 ' windows2page2 = "index.html # page2"; 페이지 2로 이동하지 않습니다. – Vini

+0

편집 된 답변이 도움이되는지 확인하십시오. – ajitksharma

+0

이 시도했습니다.'windows.location.href = "# page2";' – Vini

관련 문제