Javascript 单击没有要素的地图时隐藏弹出窗口

Javascript 单击没有要素的地图时隐藏弹出窗口,javascript,php,highcharts,openlayers,geoserver,Javascript,Php,Highcharts,Openlayers,Geoserver,我正在做一个使用openlayers和geoserver显示弹出窗口的项目。我已经成功创建了显示弹出窗口的脚本。在那里,我使用highcharts库在弹出式覆盖中创建了一个图表。我在map[Geoserver layer]中有很多图例或标记 当用户点击地图中的任何一个点时,我成功地生成了弹出窗口。我的问题是,当点击地图时,我会得到一个空白的弹出窗口,而地图上不存在任何点 我尝试在单击时设置没有要分析的数据的条件,并设置为popup.hide() 你试过了吗 reqwest({

我正在做一个使用openlayers和geoserver显示弹出窗口的项目。我已经成功创建了显示弹出窗口的脚本。在那里,我使用highcharts库在弹出式覆盖中创建了一个图表。我在map[Geoserver layer]中有很多图例或标记

当用户点击地图中的任何一个点时,我成功地生成了弹出窗口。我的问题是,当点击地图时,我会得到一个空白的弹出窗口,而地图上不存在任何点

我尝试在单击时设置没有要分析的数据的条件,并设置为popup.hide()

你试过了吗

reqwest({        
    url: urlIndia,
    type: 'json',
}).then(function (data) {
    if (data.features.length == 0) {
      popup.hide();
      return;
    }
    for (var i = 0; i < data.features.length; i++) 
    {
reqwest({
网址:urlIndia,
键入:“json”,
}).then(功能(数据){
if(data.features.length==0){
popup.hide();
返回;
}
对于(var i=0;i
你试过了吗

reqwest({        
    url: urlIndia,
    type: 'json',
}).then(function (data) {
    if (data.features.length == 0) {
      popup.hide();
      return;
    }
    for (var i = 0; i < data.features.length; i++) 
    {
reqwest({
网址:urlIndia,
键入:“json”,
}).then(功能(数据){
if(data.features.length==0){
popup.hide();
返回;
}
对于(var i=0;i
在onclick事件中尝试此操作

var feature = map.forEachFeatureAtPixel(evt.pixel,
                        function (feature) {
                            return feature;
                        });

                if (feature) { what you want to do }

查看此链接可能有助于您在onclick事件中尝试此功能

var feature = map.forEachFeatureAtPixel(evt.pixel,
                        function (feature) {
                            return feature;
                        });

                if (feature) { what you want to do }

查看此链接可能会帮助您

forEachFeatureAtPixel
检索矢量要素,但从WMS光栅层获取要素信息的唯一方法是使用
GetFeatureInfo
请求。
forEachFeatureAtPixel
检索矢量要素,但从WMS光栅层获取要素信息的唯一方法是使用ode>GetFeatureInfo
请求。