【问题标题】:get instance of map in jquery ui map在jquery ui地图中获取地图实例
【发布时间】:2014-02-06 14:01:01
【问题描述】:

我想用 ma​​rkerClusterer 使标记聚集,但我无法使用 jquery ui map 获取地图实例。 js

试过了:

var map = $('#map_canvas').gmap('getMap'); 或者 var map = $('map_canvas').gmap('get', 'map');

之后: var markerCluster = new MarkerClusterer(map, allMarkers);

但有错误

谢谢

【问题讨论】:

  • 第二次尝试是正确的,没有更多细节无法回答
  • 什么错误?您的其余代码是什么样的?

标签: jquery-ui google-maps


【解决方案1】:

试过这个。没有错误但没有集群...

$('#map_canvas').gmap({ 'callback': function () {
    var self = this;    
    $.getJSON('Data/markers.json', function (data) {
       $.each(data.markers, function (i, marker) {
        self.addMarker({ 'position': new google.maps.LatLng(marker.latitude,marker.longitude)}).click(function () {
            $.ajax({
                type: "GET",
                url: "/LocoMap/LocoMap/InfoMobilePartialView/",
                data: { latitude: marker.latitude, longitude: marker.longitude},
                success: function (data) {
                $("#marker-info").remove();     
                $(document.body).append("<div id='marker-info' data-role ='page'> </div>");
                var $contentDiv = $("#marker-info");
                $contentDiv.html(data).trigger('create');
                $.mobile.changePage("#marker-info", { changeHash: false,  type: "get", transition: 'pop',rel:"external" });
            },
                error: function (errorData) { onError(errorData); }
                });
            });
         });
     });

            self.set('MarkerClusterer', new MarkerClusterer(this.get('map'), this.get('markers')));

}});

【讨论】:

    【解决方案2】:
     $('#map_canvas').gmap({'zoom': 2, 'disableDefaultUI':true}).bind('init', function(evt, map) {
          $.getJSON( 'Data/markers.json', function(data) { 
            $.each( data.markers, function(i, m)                                
                 $('#map_canvas').gmap('addMarker', { 'position': new google.maps.LatLng(m.latitude, m.longitude), 'bounds':true } );
              });
           });                                     
    
    
    $('#map_canvas').gmap('set', 'MarkerClusterer', new MarkerClusterer(map,$(this).gmap('get', 'markers')));
     });
    
    with no errors and no clusters 
    it seems **$(this).gmap('get', 'markers')));** returns Array[0] 
    

    【讨论】:

      猜你喜欢
      • 2014-02-04
      • 2013-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多