2013-05-22 3 views
2

navigator.notification.confirm이 열렸을 때 뒤로 버튼 이벤트를 감지하는 방법은 무엇입니까? 뒤로 버튼 만 팝업을 닫지 만 이벤트 document.addEventListener ('backbutton', onBackKeyDown, false); 제기하지 않습니다.뒤로 버튼 이벤트를 감지하는 방법은 무엇입니까?

+0

주로 Phonegap 질문이기 때문에 Phonegap 태그를 추가했습니다. 또한 이것은 비판이 아니지만 코드 예제가없는 솔루션이 분류 되더라도이를 기대하지는 않습니다. – Gajotres

답변

0

navigator.notification.confirm API에 전달 된 success 콜백에서 button이 클릭 된 buttonIndex를 얻을 수 있습니다. 문서화되어 있지는 않지만 buttonIndex = 0 인 경우 사용자가 대화 상자 외부를 클릭하여 닫거나 뒤로 버튼을 클릭했습니다. 그래서 예를 들면

: 그들은 버튼을 실제 하드웨어를 다시 클릭하거나 대화 상자를 클릭 여부를 판단 할 수있는 방법이 있는지

function makeConfirm(){ 
     navigator.notification.confirm(
      'You are the winner!', // message 
      onConfirm,    // callback to invoke with index of button pressed 
      'Game Over',   // title 
      'Restart,Exit'   // buttonLabels 
     );   
    } 

    function onConfirm(buttonIndex){ 
     console.log("confirmation! Button clicked was:" + buttonIndex); 
     if(buttonIndex===0){ 
      // they either hit back button or tapped the area outside of the dialog 
     } 
    } 

잘 모르겠어요. 아마도 페이지의 본문에 클릭 이벤트를 등록하고 해당 이벤트가 발생했는지 확인하고 buttonIndex===0 인 경우 대화 상자 외부를 클릭했을 수 있습니다. buttonIndex===0이 (가) 실행되지 않았 으면 하드웨어 다시 버튼을 클릭했습니다.

또한 JQM을 사용하여 뒤로 버튼을 눌렀는지 여부를 감지하는 데 대한 StackOverflow에 대한 다른 질문을 읽었습니다. 어쩌면 당신은 이것을 사용할 수 있습니다.

+0

navigator.notification.confirm이 활성화되어있을 때 뒤로 버튼 이벤트를 처리하는 기능이 작동하지 않습니다. –

관련 문제