2011-12-23 17 views
0

はJavaScript:Googleマップのapiでクリックイベントが発生するとエラーが発生しますか?

var myLatlng = new google.maps.LatLng(10.786599576864381,106.69340372085571); 
    var myOptions = { 
     zoom: 16, 
     center: myLatlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    } 

    map = new google.maps.Map(document.getElementById("gmap"), myOptions); 

    marker = new google.maps.Marker({ 
     position: myLatlng, 
     map: map 
    }); 
google.maps.event.addListener(map, 'click', function() { 
      var location = map.getCenter(); 
      document.getElementById("lat").innerHTML = location.lat(); 
      document.getElementById("lon").innerHTML = location.lng(); 
      placeMarker(location); 
      }); 
    function placeMarker(location) { 
     var clickedLocation = new google.maps.LatLng(location); 
     marker.setPosition(location); 
    } 

HTML:

<center> 
    <div id="bd"> 
    <div id="gmap"></div> 
    lat:<span id="lat"></span> lon:<span id="lon"></span><br/> 
    </div> 
    </center> 

私はあなたが取得している場所は中心地である

+0

あなたが直面しているエラーの何種類? – Unknown

+0

@Kiran:エラーは緯度と緯度が見つかりません。結果はnull –

+0

マップの作成方法を投稿できますか? – Unknown

答えて

1

を修正する方法、緯度とLNG取得するmap.getCenterを使用しますが、見つからなかった結果地図の

あなたはこのように緯度経度を取得することができますので、クリックしてイベントをキャプチャする必要があります。

google.maps.event.addListener(map, 'click', function(event) { 
//var location = map.getCenter(); 
//document.getElementById("lat").innerHTML = location.lat(); 
//document.getElementById("lon").innerHTML = location.lng(); 
placeMarker(event.latLng); 
}) 
関連する問題