我正在使用 gmap3 设法使第一个任务正常工作。使用经纬度显示 map 。

我的 javascript 看起来很喜欢

  $('#map_canvas').gmap3(
                    {
                        action: 'init',
                        options: {
                            center: [x,y],
                            zoom: 12,
                            mapTypeId: google.maps.MapTypeId.ROADMAP,
                            mapTypeControlOptions: {
                                mapTypeIds: []
                            }
                        }
                    },
                    {
                        action: 'addMarkers',
                        radius: 100,
                        markers: GetMarkers(),
                        clusters:
                        {
                            0:
                                {
                                    content: '<div class="cluster cluster-3">CLUSTER_COUNT <div class="cluster-3text">Stops</div> </div>',
                                    width: 66,
                                    height: 65
                                }
                        },
                        marker:
                        {
                            options:
                            {
                                icon: new google.maps.MarkerImage('../img/marker.png', size, origin, null, null)
                            },
                            events:
                            {
                                mouseover: function (marker, event, data) {
                                                                        getArrivalsAndStop(marker, event, data);
                                },
                                mouseout: function () {
                                    $(this).gmap3({ action: 'clear', name: 'overlay' });
                                }
                            }
                        }
                    });

这将加载我想要的 map 。我的下一步是能够应用新的经纬度。如何在不破坏整个 map 并每次都重新创建它的情况下执行此操作?

最佳答案

来自 the documentation:


$('#test').gmap3(
{
  action: 'getLatLng',
  address: '2 bis rue saint antoine, eguilles',
  callback: function(result){
    if (result){
      $(this).gmap3({action: 'setCenter', args:[ result[0].geometry.location ]});
    } else {
      alert('Bad address 2 !');
    }
  }

});

所以看起来如果你知道坐标并且不需要使用地理编码器,那就是:
     $(this).gmap3({action: 'setCenter', args:[ new google.maps.LatLng(latitude, longitude) ]});

关于google-maps - Gmap3 在不破坏整个 map 的情况下应用新的中心位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11733933/

10-11 20:23