openlayers中监听地图缩放级别事件moveend

在实际需求中需要做到刚进入首页加载一个图层,但是在地图扩大或者缩小到某个级别后需要隐藏图层,因此我们需要对地图的缩放级别进行监听,用到的是moveend事件:

map.on("moveend",function(e){
    var zoom = map.getView().getZoom();  //获取当前地图的缩放级别
    console.log(zoom);
    if(zoom >= 12){
        tianjinlayer.getSource().clear();   //控制地图图层不可见
    }else{
        addTianjinSource("./areajson/tianjin.geojson",tianjinlayer);   //重新加载地图图层
    }
});  

通过moveend事件,无论是通过鼠标滚轮放大或者缩小地图,还是通过openlayers自带的+(地图放大)或者-(地图缩小),均能触发moveend事件,
但是,鼠标拖动地图停止的时候也会触发,因此会影响某些操作。。。

你可能感兴趣的:(openlayers)