2012-10-30 48 views
0

我正在使用jQM/Phonegap,並試圖控制Android的後退按鈕。這是我建立了一個功能的簡化版本:導航到頁面時觸發'backbutton'事件

var currFunc = undefined; 
function setButton() { 
    var func = arguments[0]; 

    document.removeEventListener('backbutton', currFunc, false); 
    currFunc = func; 
    document.addEventListener('backbutton', currFunc, false); 
} 

我現在請setButton()pagebeforeshow事件來取消任何處理。在B頁上,我現在撥打setButton(function() { alert(1); });。 首先,這似乎工作:頁面A上沒有任何反應,單擊頁面B上的按鈕將導致警報。到現在爲止還挺好。但現在,當我回到Page A並且我點擊了一個讓我再次進入頁面B的按鈕時,它將會觸發警報。

我很困惑。聽衆應該:a)無論如何都應該被解除,b)只有當手機的按鈕被按下時纔會觸發,而不是在應用程序內簡單導航。

有沒有人有關於此的信息或想法?提前致謝!

+0

您使用的是哪個版本的PhoneGap?因爲這可能是在以後的版本中修復的錯誤。 –

+0

我使用Phonegap Build而未指定版本,所以它應該是最新版本。 –

+0

我現在也把它轉到了PG社區:http://community.phonegap.com/nitobi/topics/backbutton_event_fires_when_navigating?rfm=1 –

回答

0

仍然不知道爲什麼原始代碼不起作用,但使用了評論中提到的方法。

相關問題