2013-02-08 2 views
0

페이지 1의 childbrowser에서 페이지를 열 때, 닫을 때 함수를 실행하려고합니다. 하지만 page2로 가서 childbrowser에서 다른 페이지를 열면 여기에도 함수가 실행되고 싶지 않습니다.실행 함수 onclose phonegap childbrowser?

그래서 page2가 아닌 page1에서만 childbrowser를 닫을 때 어떻게 함수를 실행할 수 있습니까?

Im이 페이지를 사용하여 Im을 CB 닫을 때 함수를 실행하십시오.

var apptypen='iPhone'; 

$(document).ready(function(){ 

    if (apptypen=='iPhone'){ 
     alert("apptype iphone"); 

    window.plugins.childBrowser.onClose=function(){ 

    jQT.goBack(1); 
    window.plugins.childBrowser.onClose = null; 
     } 
    } 
    }); 

페이지 1에 CB를 열면 알림이 실행되고 jQT.goBack (1); 함수,하지만 내가 CB를 열면 그것은 경고를 실행 doesent지만, 그것은 jQT.goBack을 실행하고 그게 내가 원하지 않는 것. 페이지 1에서 CB를 열 때만 jQT.goBack을 실행하고 페이지 2에서 CB의 페이지를 열 때가 아닙니다. 감사합니다. 감사합니다. 해결되었습니다. window.plugins.childBrowser.onClose = null; jQT.goBack 후.

답변

0

위치 변경 수신기를 등록하려고합니다. 그런 다음 2 페이지로 이동하면 전역 변수를 설정하거나 닫기 수신기를 제거 할 수 있습니다. 너의 선택.

window.plugins.childBrowser.onLocationChange = function(loc) { 
    if (loc == "page1.html") { 
     window.plugins.childBrowser.onClose = function() { 
      alert("close"); 
     }; 
    } else if (loc == "page2.html") { 
     window.plugins.childBrowser.onClose = null; 
    } 
}; 
+0

사이먼, 오랜만. 그렇지만 CB를 사용하는 다른 페이지에서 함수를 실행하지 않으려면 어떻게 될까요? else if (loc == "*") 또는 무엇인가? 감사합니다. . –

+0

else if (loc! = "page1.html"). –

+0

위치 변경은 CB의 위치입니다. 맞습니까? 그러면 CB의 위치가 변경되면 함수가 실행됩니까? 그렇다면 명확히 할 필요가 있습니다. 페이지에서 CB가 열리는 페이지에 따라 변경하고 싶지 않습니다. CB를 열면 CB를 열고 CB를 열면 기능을 실행하고 싶습니다. ON page2. :-) –

관련 문제