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事件,
但是,鼠标拖动地图停止的时候也会触发,因此会影响某些操作。。。
转载自:https://blog.csdn.net/u013594477/article/details/83185391