我是靠谱客的博主 羞涩外套,最近开发中收集的这篇文章主要介绍openlayers点击直接获取图层数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

// 防抖
_this.mapLayer = _this.olmap.getLayerGroup().getLayers().array_[2];
function debounce(fn, wait) {
var timeout;
return function() {
var context = this;
var args = arguments;
clearTimeout(timeout);
timeout = setTimeout(function() {
fn.apply(context, args);
}, wait);
};
}
//调用图层数据
function mapEvt(evt) {
var view = _this.olmap.getView();
var viewResolution = view.getResolution();
var source = _this.mapLayer.get("visible")
? _this.mapLayer.getSource()
: _this.mapLayer.getSource();
var url = source.getGetFeatureInfoUrl(
evt.coordinate,
viewResolution,
view.getProjection(),
{
INFO_FORMAT: "text/javascript",
FEATURE_COUNT: 1,
format_options: "callback: getJson",
}
);
if (url) {
$.ajax({
type: "POST",
url: url,
async: true,
dataType: "jsonp",
jsonpCallback: "getJson",
success: function(data) {
if (data.features.length != 0) {
_this.nodelistShow = true;
_this.mapEvent = data.features[0].properties;
} else {
_this.nodelistShow = false;
}
},
});
}
}
_this.olmap.on("pointermove", debounce(mapEvt, 100));

最后

以上就是羞涩外套为你收集整理的openlayers点击直接获取图层数据的全部内容,希望文章能够帮你解决openlayers点击直接获取图层数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部