切片图层加载开始和结束时的传单火灾事件
Leaflet fire event when tile layer loading begins and ends
我正在使用 Leaflet.loading 在 Leafletjs 地图上显示加载图标,同时加载 L.TileLayer.WMS 切片图层,这在缩放或平移地图时效果很好。但是,如果用户在不移动地图的情况下打开了 WMS 切片图层,则不会触发加载图标。
传单加载说明指出:
如果要在其他 AJAX 请求或 发生其他情况 [即 WMS 切片图层加载],只需在 开始加载时的映射和完成加载时的数据加载。
如何在开始和完成 WMS 切片图层加载时触发这两个事件?
假设您有以下层实例:
var layerInstance = L.tileLayer(layerUrl, layerOptions).addTo(mapInstance);
您可以捕获加载和加载事件,然后触发相应的映射事件,如下所示:
layerInstance.on('loading', function (event) {
mapInstance.fireEvent('dataloading', event);
});
layerInstance.on('load', function (event) {
mapInstance.fireEvent('dataload', event);
});
如果需要在多个层上执行此操作,也可以分离处理程序函数:
var loadingHandler = function (event) {
mapInstance.fireEvent('dataloading', event);
};
var loadHandler = function (event) {
mapInstance.fireEvent('dataload', event);
};
layerInstanceFoo.on('loading', loadingHandler);
layerInstanceFoo.on('load', loadHandler);
layerInstanceBar.on('loading', loadingHandler);
layerInstanceBar.on('load', loadHandler);
有关可用的切片图层事件和 fireEvent 方法,请参阅参考
相关文章:
- 火灾在卸载前确认警报仅适用于外部站点
- html单选按钮获胜't火灾事件
- 拉斐尔.js火灾事件
- 传单标记'dragend'火灾'单击'
- 火灾事件最多每x秒发生一次
- 聚合物模板自动绑定:在模板绑定事件之前的核心选择火灾
- ngFor之后的Angular 2火灾事件
- 过渡期间的火灾事件
- 转盘幻灯片上的火灾事件(未滑动)事件,引导区3
- 更新后的类发生火灾事件
- 传单.js地图平移时的火灾事件
- 两次按键后发生火灾事件
- 切片图层加载开始和结束时的传单火灾事件
- 火灾事件写在主干.js的子视图中
- 使用 setInterval() 而不清除以前的火灾
- 谷歌聚合物监听火灾事件从未发生过
- 如何在chrome中的卸载功能中获得火灾警报
- 指令没有't更改文本区域模型后发生火灾
- 在Angular.js中选择值时发生angucomplete火灾事件
- 任何控制器angularjs中的火灾通知烤面包机