如果我知道纬度和经度,谷歌地图如何添加标记

时间:2014-07-01 13:09:00

标签: javascript jquery google-maps google-maps-api-3

之前,我在点击时添加标记:

google.maps.event.addListener(map, 'click', function(event) {
    marker = new google.maps.Marker({
        position: event.latLng,
        map: map
    });

这是有效的查找,但现在我想根据纬度和经度添加标记,而不是取决于点击事件。

我试过了:

if (("#latitude").val() && (("#longitude").val())){
    marker = new google.maps.marker({
    });
}

但我仍然不知道我应该通过什么参数。你能帮帮我吗?

非常感谢

2 个答案:

答案 0 :(得分:5)

<!DOCTYPE html>
<html>
  <head>
    <title>Add Marker to Map</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <style>
      html, body, #map-canvas {
        height: 90%;
        margin: 0px;
        padding: 0px
      }
    </style>
    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script>
    <script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
    <script>
        var map;
        function initialize() {
          var mapOptions = {
            zoom: 8,
            center: new google.maps.LatLng(-34.397, 150.644)
          };
          map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
        }
        google.maps.event.addDomListener(window, 'load', initialize);

        jQuery(document).ready(function(){

            jQuery("#addmarker").bind("click", function(){
                console.log("Click");
                var marker = new google.maps.Marker({
                    position: new google.maps.LatLng( -34.397,150.644),
                    map: map,
                    title: 'Hello World!'
                });

                var contentString = '<div id="content" style="width: 200px; height: 200px;"><h1>Overlay</h1></div>';
                var infowindow = new google.maps.InfoWindow({
                    content: contentString
                });

                google.maps.event.addListener(marker, 'click', function() {
                  infowindow.open(map,marker);
                });

                // To add the marker to the map, call setMap();
                marker.setMap(map);
            });
        });     
    </script>
  </head>
  <body>
    <div id="map-canvas"></div>
    <a href="javascript:void(0);" id="addmarker">Add marker</a>
  </body>
</html>

答案 1 :(得分:0)

map.addOverlay(new GMarker(
    new GLatLng(-33.9417, 150.9473)));
var point = new GLatLng(-33.9417, 150.9473);
map.setCenter(point, 10);
var marker = new GMarker(point);
map.addOverlay(marker);

http://javascript.about.com/library/blgmap05.htm