我不認爲你需要把該事件e像你這樣,我用的是這樣的作品:
onBackButton: function() {
console.log('User pressed back button.');
if (<logic to determine if app is at its home screen>) {
// Go to launcher
navigator.app.exitApp();
} else {
// Logic to determine what view is the "back" view
}
}
也是您在註冊「後退按鈕」事件偵聽器後的「deviceready」事件已收到。我註冊礦在 「deviceready」 回調函數:
onDeviceReady: function() {
document.addEventListener('pause', app.onDevicePause, false);
document.addEventListener('resume', app.onDeviceResume, false);
document.addEventListener('offline', app.onOffline, false);
document.addEventListener('online', app.onOnline, false);
if (device.platform === 'Android') {
document.addEventListener('backbutton', app.onBackButton, false);
document.addEventListener('menubutton', app.onMenuButton, false);
document.addEventListener('searchbutton', app.onSearchButton, false);
}
...
}
感謝您的反饋西蒙。最近幾天我嘗試了類似的方法,但不是那種確切的語法,所以我會再次嘗試一下。 – Dresden
再次感謝您的建議,但我無法讓這個工作。事實上,'deviceready'從來沒有被解僱過。我在.run和.controller裏試過了。我也嘗試使用ons.ready(它做了fire)而不是deviceready,但後退按鈕的代碼仍然沒有執行。 – Dresden