0

jQM/Phonegap を使用しており、Android の戻るボタンを制御しようとしています。これは、私が作成した関数の簡略版です。

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 のボタンをクリックするとアラートが発生します。ここまでは順調ですね。しかし今、ページ A に戻ってページ B に戻るボタンをクリックすると、アラートがトリガーされます。

よくわかりません。リスナーは、a) とにかく設定を解除し、b) 単純にアプリ内を移動するときではなく、電話の戻るボタンが押されたときにのみ起動する必要があります。

誰かがこれに関する情報やアイデアを持っていますか? 前もって感謝します!

4

1 に答える 1

0

元のコードが機能しなかった理由はまだわかりませんが、コメントに記載されているアプローチを使用すると機能します。

于 2012-11-27T20:01:32.240 に答える