2014-02-05 75 views
1

我開發了一個Phonegap應用程序,我想要聽後退按鈕事件。我做的:收聽後退按鈕使其無法正常工作

 document.addEventListener("backbutton", function(){ 

       console.log('in back button');    

     }, false); 

這工作,但後退按鈕然後禁用,它永遠不會做任何事情的時候我只是聽的事件。我試過了:

 document.addEventListener("backbutton", function(){ 

      return true; 

     }, false); 

但是結果相同。它進入匿名函數,但不會繼續正常的後退按鈕功能。如何在收聽後按下後退按鈕以正常進行?

回答

0

當您像這樣添加偵聽器時,您將覆蓋默認操作。您可以通過刪除其用回默認的動作:

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

function goToX(){ 
//Do what you want 
} 

//to cancel the override 
document.removeEventListener("backbutton", goToX, false); 

無法刪除偵聽器,如果函數是一個匿名函數

您也可以將您的監聽器和手動設置退出動作

if(platform != 'iOS') 
document.addEventListener("backbutton", backbuttonListener, false); 

function backbuttonListener(){ 
    if(Container.currentPrint == Main){ 
     navigator.app.exitApp(); 
    } 
    else{ 
     Container.setContent(Main); 
    } 
} 

不要忘記,在我的手機,你沒有物理後退按鈕,所以要記得,如果增加一個邏輯一個window.device.platform ==「iOS版」