0

私は長い間この問題と戦っていますが、適切な解決策を見つけることができません。私の目標は、アプリにGoogleマップを表示することです。jQTouchとPhoneGapフレームワークを使用してアプリを開発しています。これが私のコードです:

<!DOCTYPE html>
<html>
  <head>
    <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" />
    <style type="text/css">
      html { height: 100% }
      body { height: 100%; margin: 0; padding: 0 }
      #map_canvas { height: 100% }
    </style>
    <!-- INCLUDE CORDOVA -->
    <script type="text/javascript" src="cordova-2.4.0.js"></script>
    <!-- INCLUDE REMOTE DEBUGGING -->
    <script src="http://debug.phonegap.com/target/target-script-min.js#photogap"></script>"
    <!-- INCLUDE jQTouch -->
    <link rel="stylesheet" href="./js/jqtouch-1.0-b4-rc/themes/css/jqtouch.css" id="jqtcss" />
    <link rel="stylesheet" href="./css/index.css" />
    <script type="text/javascript" src="./js/jqtouch-1.0-b4-rc/src/lib/zepto.min.js" charset="utf-8"></script>
    <script type="text/javascript" src="./js/jqtouch-1.0-b4-rc/src/jqtouch.min.js" charset="utf-8"></script>
    <!-- INCLUDE GOOGLE MAP -->
    <script type="text/javascript"
      src="https://maps.googleapis.com/maps/api/js?key=AIzaSyByqhQ9cCaXTKjBi2xEyp_HqQJwDl3YzRo&sensor=true">
    </script> 
    <script type="text/javascript">
        // Inicializuj jqTouch
        $.jQTouch({
            icon: 'jqtouch.png',
            statusBar: 'black-translucent',
            preloadImages: []
        });

    </script>
  </head>
  <body>
    <div id="home" class="current">
        <div class="toolbar">
            <h1>Orionids</h1>
        </div>
        <ul class="rounded">
            <li class="arrow"><a href="#my_spots">My Spots</a></li>
            <li class="arrow"><a href="#map">View On Map</a></li>
            <li class="arrow"><a href="#" onclick="choosePhoto(pictureSource.PHOTOLIBRARY)">Choose From Library</a></li>
        </ul>
        <div id="spot_btn">
            <a href="#" class="redButton" onclick="takePhoto()">Spot Now!</a>
        </div>
        <p id="quote">„Make a wish…“&lt;/p>
    </div>
    <div id="map">
        <div class="toolbar">
            <h1>Map View</h1>
            <a class="back" href="#">Home</a>
        </div>
        <div id="map_canvas" style="width:100%; height:100%"></div>
        <script>
        // Incializuj Google Mapy
        function initialize() {
            var mapOptions = {
                    center: new google.maps.LatLng(-34.397, 150.644),
                    zoom: 8,
                    mapTypeId: google.maps.MapTypeId.ROADMAP
            };
            var map = new google.maps.Map(document.getElementById("map_canvas"),
            mapOptions);
        }

            $('#map').bind('pageAnimationEnd', function() {
                initialize();
            });
        </script>
    </div>
  </body>
</html>

問題は、私が何をしようとしても地図が表示されないことです。Stack Overflowで見つけたすべてのヒントを試しましたが、今のところ運がありません。どんな助けでもいただければ幸いです。

4

1 に答える 1

1

コンテナdivの高さを%ではなくpxで設定する必要があります

<div id="map_canvas" style="width:100%; height:100px"></div>

これを試してみると、地図が表示されます。また、initializeメソッドが呼び出されていることを確認してください。

于 2013-02-21T20:34:13.357 に答える