Leaflet中的全局映射变量

时间:2016-06-30 15:00:27

标签: javascript leaflet

大家好:我正在使用传单,尝试使用缩放方法在缩小时删除图层。

var map;

//function to instantiate the Leaflet map
function createMap(){
//create the map
map = L.map('map', {
    //set geographic center
    center: [41.4, -110],
    //set initial zoom level
    zoom: 4,
    maxZoom: 8,
    minZoom: 2
});


//add OSM base tilelayer
L.tileLayer('http://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png', {
    //set attribute info (source)
    attribution: '&copy; <a href="http://www.openstreetmap.org    /copyright">OpenStreetMap contributors</a>'
    //and add it to map

}).addTo(map);
 L.geoJson(worldCountries).addTo(map);

};

但是,我现在正在尝试添加一些侦听器事件,该事件将在缩放地图时删除图层。

map.on('zoomend', function () {
if (map.getZoom() > 4) {
    map.removeLayer(worldCountries);
}

});

$(document).ready(createMap);

我收到错误说&#34;地图未定义。&#34;我以为我在脚本的最开始就是全局声明的?实际上,我似乎无法访问createMap函数之外的map变量,所以这似乎是问题所在。任何帮助赞赏!

0 个答案:

没有答案