2013-12-09 4 views
0

Я видел, что есть много ответов о моей проблеме, но ничего не работает, и я схожу с ума.Back Button & iFrame для Android - Помогите noob

У меня есть реальная простая структура iframe, я хочу, чтобы кнопка Back не возвращалась (страница за страницей), но закрывает приложение (скрыть или закрыть одно и то же).

Думаю, что я действительно новичок, поэтому, пожалуйста, объясните мне все шаг за шагом

Это мой код:

<script type="text/javascript" charset="utf-8" src="cordova.js"></script> 
<script type="text/javascript" charset="utf-8"> 
    function onLoad() { 
     document.addEventListener("deviceready", onDeviceReady, false); 
    } 

    function onDeviceReady() { 
     // Register the event listener 
     document.addEventListener("backbutton", onBackKeyDown, false); 
    } 

    // Handle the back button 
    // 
    function onBackKeyDown() { 

     navigator.app.exitApp(); 
    } 
</script> 
</head> 

<body> 
    <div data-role="page" id="page"> 
     <div data-role="content"> 

      <div class="container"> 

       <div class="content"> 
        <iframe src="home.html" name="pagina" class="pagina"> </iframe> 
       </div> 

СПАСИБО !!!!

ответ

0

Это работало для меня в прошлом.

document.addEventListener("deviceready", onDeviceReady, false); 

function onDeviceReady(){ 
    document.addEventListener("backbutton", function(e){ 
     if($.mobile.activePage.is('#homepage')){ 
      e.preventDefault(); 
      navigator.app.exitApp(); 
     } 
     else { 
      navigator.app.backHistory() 
     } 
    }, false); 
} 

Надеюсь, что это поможет.

+0

Я пробовал раньше, но он всегда возвращается страница за страницей, а не закрывает приложение :( – user3083397

0

Я также столкнулся с той же проблемой, из-за которой я устал. Но после многих итераций я преуспел. Вот фрагмент кода, добавьте это в .run функции вашего app.js

.run(function($ionicPlatform,$ionicPopup) { 
     $ionicPlatform.registerBackButtonAction(function (event) { 
     if(0){ 
      navigator.app.exitApp(); 
     } 
     else { 
      navigator.app.backHistory(); 
     } 
     }, 101); 
}) 

В приведенном выше коде 101 является приоритетом. Для выхода из приложения приоритет равен 100. Таким образом, мы увеличиваем приоритет до 101.