通过geojson对象添加少量标记时,传单变得非常慢

时间:2014-12-14 20:40:34

标签: javascript jquery ajax leaflet geojson

我正在尝试在地图上加载有关公交线路的geojson数据。巴士站是Points,线是LineString。这些文件位于适当的geojson文件中:http://pastebin.ca/2886659

然后我通过AJAX加载文件(y尝试直接加载相同的效果/结果)。在geojson文件中大约有90个点,所以理论上不应该担心任何事情。当只加载5分时,它有点快,但已经有10分,浏览器变得很慢,开始吃掉我的记忆。

这应该是相关代码的一部分:

$("#load").click (function() {
  $.ajax({
    type: "POST",
    url: "./data/test.geojson",
    dataType: 'json',
    success: function (response) {
      console.log(response);
      geojsonLayer = L.geoJson(response, {
        onEachFeature: function (feature, layer) {
          layer.bindPopup(feature.properties.name);
      }});

      map.addLayer(geojsonLayer);
    }
  });
});

特别是在评论map.addLayer(geojsonLayer);时,一切正常,但没有数据显示:)

点击此处查看完整代码:http://jsfiddle.net/5vnrj8ec/5/

不确定这是否相关:但是当只通过geojson对象加载5个点时,每次我点击一个弹出窗口时它会越来越慢......

非常感谢!

1 个答案:

答案 0 :(得分:1)

这是由与Zoomslider库发生冲突引起的。如果你正在使用它并且你正在观察同样的问题,只需从你的标题中踢出包含并再次检查。