11

多くのユーザーがこの質問をしているのを見てきましたが、実際には、キーなしで Google マップを使用する方法の例を含む回答がまだありません (すべての回答は別の Web ページへの参照です)。

キーなしで Google マップを使用することはできましたが、静的なマップしか取得できませんでした。このダイナミックな方法を知っていますか?

var img = new Image();

img.src = "http://maps.googleapis.com/maps/api/staticmap?center=-32.0000343,-58.0000343&zoom=5&size=300x300&sensor=true&visualRefresh=true";

return img; //OR document.body.appendChild(img); 

このリンクをクリックするだけでも地図が表示され、「url プロパティ」を変更すると地図を「編集」できます: http://maps.googleapis.com/maps/api/staticmap?center=-32.0000343 ,-58.0000343&zoom=5&size=300x300&sensor=true&visualRefresh=true

「ダイナミック マップ」と言うときは、次のようなものを意味します: https://google-developers.appspot.com/maps/documentation/javascript/v2/examples/map-simple

4

5 に答える 5

18

これは私にとってはうまくいきました。ローカルホストで試しました。stackoverflow の他のさまざまなソリューションは役に立ちませんでした。

<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?q=<?php echo urlencode($address); ?>&amp;output=embed"></iframe><br />

このようにして、バックエンドで入力した住所に基づいてマップを動的に生成できます。

于 2014-07-10T09:21:04.613 に答える
15

@geocodezip が言ったように、あなたはGoogle Maps Javascript v3を探しています。

これを使用する簡単な例を次に示します(私の古い回答から選択)。これにはキーは必要ありません。

HTML:

<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<div id="map-canvas"></div>

CSS:

#map-canvas {
        margin: 0;
        padding: 0;
        height: 100%;
      }

Javascript:

function initialize() {
    var myLatlng = new google.maps.LatLng(43.565529, -80.197645);
    var mapOptions = {
        zoom: 8,
        center: myLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

     //=====Initialise Default Marker    
    var marker = new google.maps.Marker({
        position: myLatlng,
        map: map,
        title: 'marker'
     //=====You can even customize the icons here
    });

     //=====Initialise InfoWindow
    var infowindow = new google.maps.InfoWindow({
      content: "<B>Skyway Dr</B>"
  });

   //=====Eventlistener for InfoWindow
  google.maps.event.addListener(marker, 'click', function() {
    infowindow.open(map,marker);
  });
}

google.maps.event.addDomListener(window, 'load', initialize);

参照用に簡単なフィドルを作成しました。

あなたがいくつかのアイデアを持っていることを願っています。

キーの使用に興味がないので、制限に注意してください

Google Maps Javascript API :サービスごとに 1 日あたり最大 25,000 のマップ読み込み。

これも:


  1. Web ページまたはアプリケーションによってロードされると、Maps JavaScript API (V2 または V3) を使用してマップが表示されます。
  2. マップを表示していない Web ページまたはアプリケーションによって、Maps JavaScript API (V2 または V3) を使用してストリート ビュー パノラマが表示される。
  3. Maps API for Flash を読み込む SWF は、ウェブページまたはアプリケーションによって読み込まれます。また
  4. Static Maps API から地図画像を 1 回リクエストします。
  5. Street View Image API からパノラマ画像を 1 回リクエストします。

皆様のコメントから、

私も使ってみcanvasましたが、うまくいきませんでした。

 var mapCanvas = document.createElement("canvas");

しかし、これは要素でうまく機能していdivます。

var mapCanvas = document.createElement("div");
mapCanvas.style.width = "200px";
mapCanvas.style.height = "200px";

更新された JSFiddle

幅と高さのプロパティを設定することを忘れないでください。

于 2013-08-08T16:17:55.070 に答える
1

Google Maps Javascript API v3を使用します (ドキュメントに良い例がたくさんあります)

于 2013-08-08T16:11:54.053 に答える
0

Androidフォンから試してみてください

href = "google.streetview:cbll=51.470305,-0.183842&cbp=1,10,,0,2.0&mz=mapZoom"

これをアンカーリンクに追加します

于 2014-02-03T17:14:44.583 に答える