4

私はjQueryMobilev1.2.0とPhoneGapv2.2.0を使用しています。PhoneGapイベントはどれも発生していないようですが、私はそれを呼び出しています(document.addEventListenerまたはを介して$(document).on。戻るボタンとメニューボタンの検出は機能しません。

このような他の質問もありますが、これまでのところ、document.addEventListenerイベントリスナーを追加するためにjQueryアプローチを使用または使用するための提案しかありませんが、実際には機能しません。誰かが私にそれらを検出する確実な方法を教えてもらえますか?

これ<head>が私のindex.htmlのです

<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta name="format-detection" content="telephone=no" />
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />

    <link rel="stylesheet" href="jqm/jquery.mobile-1.2.0.css" />
    <link rel="stylesheet" href="jqm/jquery.mobile.theme-1.2.0.css" />
    <script src="js/jquery.js"></script>
    <script src="jqm/jquery.mobile-1.2.0.js"></script>
    <script src="js/cordova.js"></script>
    <script type="text/javascript">
        $(document).live("pagechange",function(){
            var page = $.mobile.activePage.attr("id");

            document.addEventListener("menubutton", menuKeyDown, true);
            function menuKeyDown() {
                alert('Menu button pressed.');
            }
        });
    </script>
</head>
4

1 に答える 1

6

build.phonegap.com にアップロードする前に、プロジェクト内の「cordova.js」を削除してください。そして、以下のコードを試してください。

<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="format-detection" content="telephone=no"/>
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi"/>
<link rel="stylesheet" href="jqm/jquery.mobile-1.2.0.css"/>
<link rel="stylesheet" href="jqm/jquery.mobile.theme-1.2.0.css"/>
<script src="js/jquery.js"></script>
<script src="jqm/jquery.mobile-1.2.0.js"></script>
<script src="js/cordova.js"></script>
<script type="text/javascript">
        $(document).live("pagechange",function(){
            var page = $.mobile.activePage.attr("id");
        });
        document.addEventListener("deviceready", function () {
            document.addEventListener("menubutton", menuKeyDown, true);
        }, false);
        function menuKeyDown() {
                alert('Menu button pressed.');
            }
    </script>
</head>
于 2012-12-26T09:29:00.403 に答える