将外部GeoJSON添加到Leaflet中的问题

时间:2014-05-14 04:36:36

标签: javascript ajax leaflet geojson

我尝试使用jQuery和AJAX(显示here的不同方式)将我的GeoJSON文件添加到我的地图上。我的地图呈现但功能不会显示。

我的代码的一个版本:

在阅读this question之后,我将leaflet.ajax插件保存为与我的html页面相同的文件夹中的leaflet.ajax.min.js,然后通过在标记之间添加此行来调用它:

<script src="leaflet.ajax.min" type=text/javascript""></script>

然后我有了这个:

  var save41 = L.GeoJSON.AJAX("https://raw.githubusercontent.com/sidewalkballet/TTCriders/develop/save41.geojson", {onEachFeature:popUp});

  function popUp(feature, layer) {
      layer.bindPopup(feature.properties.name);
      }

  save41.addTo(map);

我在Chrome中遇到的错误是:

&#34; GET file:///localpath/leaflet.ajax.min net :: ERR_FILE_NOT_FOUND&#34; (虽然它与我的HTML在同一个文件夹中) &#34;未捕获的TypeError:undefined不是函数&#34; (参考l.GeoJSON.AJAX位)

么?我没有正确找到GeoJSON文件吗?提前致谢。

1 个答案:

答案 0 :(得分:0)

你有几个问题。

  1. 您的leaflet.ajax.min导入请求未在本地系统上找到该文件。如果leaflet.ajax.min确实在您的本地文件系统上,请确保script标记中的路径相对于您的网站服务器根目录(index.html文件所在的位置)。

    < / LI>
  2. 修复问题#1后,您将无法从github访问geojson(请参阅my answer to a similar question on gis.stackexchange)。解决此问题的最简单方法是将geojson的内容复制到本地文件中并以此方式访问。