Cordova (폰갭) backkey(취소키) 누를때 종료 팝업이 뜨게하기
코르도바 하이브리드 앱에서 종료팝업 사용하기 및 취소키 사용시 이슈
코르도바 하이브리드 앱에서 특정화면에서 취소키를 누르면 종료팝업이 뜨게 하고 싶다. 이럴때는..
<< 취소키 사용시 종료팝업이 뜨는 페이지 사용 예 >>
<script type="text/javascript">
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
document.addEventListener("backbutton", onBackKeyDown, true);
}
function onBackKeyDown() {
navigator.notification.confirm('앱을 종료하시겠습니까?', onBackKeyDownMsg, '스마트오더', '취소, 종료');
}
function onBackKeyDownMsg(button) {
if(button == 2) {
navigator.app.exitApp();
}
}
</script>
<body onload="onLoad()">
한번 취소키에 어떤 변경을 가하면 그 후로부터 코르도바는 취소키가 동작되지 않는다.
즉 모든페이지에서 onBackKeyDown() 함수를 설정해야 한다. 이럴때
기본으로 제공되는 취소키 정의, 즉 이전화면으로 가는 기능을 사용하고 싶을때는..
navigator.app.overrideBackbutton(false);
이걸 사용하면 된다.
<< 취소키 사용시 이전화면으로 가는 페이지 사용 예 >>
</script>
<script type="text/javascript">
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
navigator.app.overrideBackbutton(false);
}
</script>
<body onload="onLoad()">
결재나 어떤 트랜잭션이 발생된 이후에 취소키를 눌러 이전화면으로 가면 안되겠죠?
이럴때는 다시 onBackKeyDown() 함수를 사용하여, 아무동작도 안하도록 하거나, 취소키를 사용할 수 없습니다 같은 팝업을 띄워주면 된다.
<< 취소키 사용시 동작이 안되도록 하는 페이지 사용 예 >>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
// device APIs are available
//
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
//
function onBackKeyDown() {
}
</script>
<body onload="onLoad()">
참고 URL
http://servedev.tistory.com/50
'jQuery 등 스크립트 ' 카테고리의 다른 글
html style css float 속성 (0) | 2016.02.25 |
---|---|
html css style 이미지 겹치기 (0) | 2016.02.25 |
자바스크립트 입력 양식 체크 (이메일 등 회원가입시) (0) | 2015.12.03 |
input 에서 엔터 클릭 시 첫번째 button onclick 실행 시. (0) | 2015.10.19 |
모바일 웹에서 뒤로가기시(백키) 갱신하기 (1) | 2015.09.09 |