2017-02-24 4 views
3

私のコードホイールアプリでは、バックボタンがアプリを何となく終了させるというこの問題に苦労しました。私はオンラインで見たすべてのソリューションを試しましたが、成功しませんでした。戻るボタンがコードバスアプリを終了しないようにします

私が試したすべての解決策(以下の例)は同じ結果をもたらしました。

document.addEventListener("backbutton", onBackKeyDown, false); 

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

私のコールバック内のコードは問題なく実行されますが、実行後は終了します。私は例

console.log(undefinedVar); 

のために、私の機能でReferenceErrorを含むことによって、出口を防ぐことができます。しかし、これは、明らかにベストプラクティスのように見えるしていません。

私が試みた他の解決策には、コールバックのevent.preventDefault()とイオンのregisterBackButtonAction機能を使用しています。

ご意見をいただければ幸いです。

+0

このコードは、私の作品 - document.removeEventListener( "戻るボタン"、onBackButton、偽); onBackButton(E){ e.preventDefaultを()関数。 navigator.notification.confirm( "本当に終了しますか?"、on確認、 "確認"、 "はい、いいえ"); } 機能の確認(ボタン){ if(button == 2){ return; } else { navigator.app.exitApp(); } } – Gandhi

+0

私は試したことがありますし、それは私のために働いた..私はコードを試すことができますそれは他のBAの前のページに戻ることを防ぐのに役立ちます...アンドロイドのコルドーバの戻るボタンキーを無効にするだけでなく、 ....ありがとう –

答えて

0
enter code here 

<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
    <title>Stopping Back Button</title> 
 
    <link rel="stylesheet" type="tex`enter code here`t/css" href="style.css"> 
 
    <script> 
 
     function getTitle() { 
 
      document.getElementById("ct").innerHTML = "DEMO: " + document.title; 
 
     } 
 
    </script> 
 
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script> 
 
    <script type="text/javascript" charset="utf-8"> 
 
    // Wait for device API libraries to load 
 
    // 
 
    function onLoad() { 
 
     document.addEventListener("deviceready", onDeviceReady, false); 
 
     getTitle(); 
 
    } 
 
    // device APIs are available 
 
    // 
 
    function onDeviceReady() { 
 
     // Register the event listener 
 
     document.addEventListener("backbutton", onBackKeyDown, false); 
 
    } 
 
    // Handle the back button 
 
    // 
 
    function onBackKeyDown() { 
 
     alert('Back Button Disabled'); 
 
     console.log('Back Button Disabled'); 
 
    } 
 
    </script> 
 
    </head> 
 
    <body onload="onLoad()"> 
 
    <ul id="nav"> 
 
     <li><a href="index.html">&larr; Back</a></li> 
 
     <li><a href="#" id="ct" onclick="location.reload();"></a></li> 
 
    </ul> 
 
    </body> 
 
</html>

+0

私は試してこれを試すことができ、それは私のために働いた..おかげで –

関連する問題