0

我使用gmap3插件在谷歌地图中显示结果有文本框字段,当有人在纽约城输入例如“纽约”许多标记时,我想要地图缩放并适合纽约并在这个地方显示所有标记? 怎么办?为了向您展示我想要的内容,请查看此站点:padmapper.com

这是我的代码:

$(function(){
           $("#main-map").gmap3({
      map:{
        options:{
          center:["newyork"]
        }
      },
      marker:{
        values:[
          {latLng:[48.8620722, 2.352047]},
          {address:"86000 Poitiers, France"},
          {address:"66000 Perpignan, France"}
        ],
      }
    });
    $('#ok').click(function(){
      var addr = $('#Address').val();
      if ( !addr || !addr.length ) return;
      $("#main-map").gmap3({
        getlatlng:{
          address:  addr,
          callback: function(results){
            if ( !results ) return;
            $(this).gmap3({
              marker:{                              
                latLng:results[0].geometry.location,
                map:{
                    options:{
                    center: addr ,
                    zoom: 12
                    },
                  center: addr
                }
              }
            });
          }
        }
      });
    });

    $('#Address').keypress(function(e){
      if (e.keyCode == 13){
        $('#ok').click();
      }
    });
  });

和html代码

    <div id="main-map">
        </div>
    <input type="text" placeholder="City, Address, or Zip" name="goToAddress" style="margin-left:5px; width:215px;" id="Address">
<button id="ok" type="button">Go</button>
4

1 回答 1

3

尝试这个

$('#ok').click(function(){
  var addr = $('#Address').val();
  if ( !addr || !addr.length ) return;
  $("#main-map").gmap3({
    getlatlng:{
      address:  addr,
      callback: function(results){
        if ( !results ) return;
        $(this).gmap3({
          marker:{                              
            latLng:results[0].geometry.location,

          }
          {action: 'setCenter', args:[ result[0].geometry.location ]}
        });
      }
    }
  });
});
于 2013-04-30T10:26:10.057 回答