当前位置: 首页 > 知识库问答 >
问题:

jquery ui map群集器标记不显示

陈正业
2023-03-14

我正在使用jquery ui map,我正在从geoJSON加载标记,然后我想对它们进行聚类,但我可以看到标记,但不能看到聚类

我的代码如下:

$('#map_tracks').gmap({ 'center': '45.752051,6.295604', 'zoom': 12 }).bind('init', function(ev, map) {
    $('#choose_sentiers').change(function() {
      var selected = $('#choose_sentiers').val();      

      $('#map_tracks').gmap('loadKML', 'sentier', 'http://example.org/media/kml/sentiers_vtt_randos/'+selected+'.kml');

      $.getJSON( "markers.geojson", function( data ) {                
        $.each( data["features"], function( key, val ) {
          var longitude = val["geometry"]["coordinates"][0];
          var latitude = val["geometry"]["coordinates"][1];
          var nom = val["properties"]["NOM"];
          var type = val["properties"]["TYPE"];

          $('#map_tracks').gmap('addMarker', { 
                  'position': new google.maps.LatLng(latitude, longitude)
              }).click(function() {
                  $('#map_tracks').gmap('openInfoWindow', { 'content': nom }, this);
              });

        });

      });


    });
    $('#map_tracks').gmap('set', 'MarkerClusterer', new MarkerClusterer(map, $(this).gmap('get', 'markers')));
  });

当我执行console.log($(this).gmap('get','marks'))时;它是空的,我不明白它为什么会这样。

你有什么主意吗?

谢谢

共有1个答案

姚俊材
2023-03-14

我已经找到了一个方法来修复它:

var markercluster;
 $('#map_tracks').gmap({ 'center': '45.752051,6.295604', 'zoom': 12 }).bind('init', function(ev, map) {
 $('#choose_tracks').change(function() {
  var selected = $('#choose_tracks').val();      

  if ( selected != 'none' )
  {       
    $("#map_tracks").gmap('clear', 'overlays');

    $('#map_tracks').gmap('loadKML', 'sentier', 'http://mynicesite.com/media/kml/'+selected+'.kml');

    $.getJSON( "http://mynicesite.com/media/geojson/sentiers_poi/"+selected+".geojson").done(function( data ) {
      if ( markercluster != undefined )
      {
        markercluster.clearMarkers();
      }

      $.each( data["features"], function( key, val ) {
        var longitude = val["geometry"]["coordinates"][0];
        var latitude = val["geometry"]["coordinates"][1];
        var nom = val["properties"]["NOM"];
        var type = val["properties"]["TYPE"];

        $('#map_tracks').gmap('addMarker', { 
                  'position': new google.maps.LatLng(latitude, longitude),
          'icon':'http://mynicesite.com/media/kml/'+markersIcons[type]['name']
              }).click(function() {
                  $('#map_tracks').gmap('openInfoWindow', { 'content': nom }, this);
              });    
      });

      markercluster = new MarkerClusterer(map, $('#map_tracks').gmap('get', 'markers'));

      $('#map_tracks').gmap('set', 'MarkerClusterer', markercluster);  
    });

    drawPath(selected);        
  }   
 });    
});
 类似资料:
  • 我正在使用传单和标记集群插件,我想动态修改从孩子在里面的集群图标。 我的代码可以工作,但不需要我想要的:在iconCreateFunction函数中,我想计算“ClusterBatteriEfaible”的标记,但我不知道如何将其作为参数发送。有什么建议吗?

  • 这个代码过去是有效的,但我不确定我改变了什么,或者在传单中改变了什么来打破它,但没有显示标记。数据正确返回,正在创建标记对象,但未显示任何标记。我在这里不知所措。使用0.7.2。让我给你看看代码。。。 } 一切都应该很好。服务器正确返回信息。列表中始终有13项(预期行为),我将plostlist[I]的内容以及plotmarker对象打印到控制台。 以下是plotlist[i]的输出: 一切看起来

  • 我正在学习Jupyter笔记本的降价单元格,并尝试使用以下代码为我的一本笔记本创建一个简单的深红色标题: 在Jupyter笔记本中,当我运行单元格时,这变成了一个深红色的标题,正如预期的那样,这里有一个大纲:http://datascience.ibm.com/blog/markdown-for-jupyter-notebooks-cheatsheet/. 当我将笔记本上传到GitHub时,我的J

  • 我希望将行插入到表中,但这些行被回显,但没有显示在表中。 项目的HTML代码为: 项目的main.js文件是:它从下面的PHP文件中取数据: 项目的PHP代码是:

  • 当我点击google maps标记时,它会注册点击,但我无法在状态改变后显示InfoWindow。 尝试在单击时设置/读取更新的状态 ''' 我期望google map标记会出现某种类型的InfowWindow,但相反,infowWindowOpened返回的是未定义的

  • 在src目录下,我运行下面的命令 但得到以下错误。 创建集群[ERR]抱歉,无法连接到节点127.0.0.1:7000 但是,如果我使用命令“redis server redis.conf”在7000处启动节点,其中redis.conf在下面 端口7000群集已启用是群集配置文件nodes.conf群集节点超时10群集从属有效性系数0 appendonly是 同样,我成功地在所有端口启动了redi