在MapBox中编辑现有的引脚/ GeoJSON

时间:2013-11-07 21:29:48

标签: mapbox

我有一个MapBox地图,其上有通过MapBox网站创建的引脚。

我用我网站上的那些推针来调用这张地图。

我不能为我的生活,找到任何相关的代码来做两件事:

1)我需要修改预制点的GeoJSON数据以向其添加URL(做类似这样的事情:https://www.mapbox.com/mapbox.js/example/v1.0.0/markers-as-links/)。如何在JS中访问这些现有对象?我看到的只有代码示例,您可以在代码中创建点/ GeoJSON数据。

2)切换我通过TileMill以编程方式添加到此地图的图层。我有一个高亮层,我想在我的HTML页面上创建一个UI元素来打开和关闭。

谢谢。

编辑:

没有做任何疯狂的事情来调用地图。

var map = L.mapbox.map('map', 'aam.map-ryzkcons');

然后我设置了一些坐标和缩放级别。

map.setView([34.89, -87.31], 6);

然后全力以赴

map.markerLayer.on('click', function(e) {
map.panTo(e.layer.getLatLng()); 
});

地图aam.map-ryzkcons是在mapbox的网页用户界面中制作的。它还有一些我通过TileMill上传的图层。我想弄清楚如何在代码中打开和关闭任何这些层。我还想访问标记并向它们添加URL标记以使它们可单击 - 因为我没有在Web UI中看到这样做的方法。我可以找到这样做的唯一例子,让你事先在代码中创建标记,而不是像我一样在Web UI中创建标记。我想保持这种方式,所以维护人员可以去mapbox.com添加标记。

1 个答案:

答案 0 :(得分:1)

  

切换我通过TileMill以编程方式添加到此地图的图层。我有一个高亮层,我想在我的HTML页面上创建一个UI元素来打开和关闭。

请参阅layers control example

  

如何在JS中访问这些现有对象?

等待ready event,然后使用getGeoJSON获取数据,或eachLayer迭代图层。使用API documentation作为参考。