Javascript wfs功能onSelect事件在firefox中不起作用
我想从WFS源加载功能,单击该功能并获得一个显示该功能信息的弹出窗口。 我的代码如下:Javascript wfs功能onSelect事件在firefox中不起作用,javascript,openlayers,Javascript,Openlayers,我想从WFS源加载功能,单击该功能并获得一个显示该功能信息的弹出窗口。 我的代码如下: ` var renderer = OpenLayers.Util.getParameters(window.location.href).renderer; renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers; featureLayer = new OpenLayers.Layer.Vecto
` var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
featureLayer = new OpenLayers.Layer.Vector("WFS点图层", {
version: "1.1.0",
protocol: new OpenLayers.Protocol.WFS({
url: "http://172.31.4.122:8090/iserver/services/data-XinDiTu/wfs100/utf-8",
featureType: "BaseMap_P",
featureNS: "http://www.supermap.com/newdata",
featurePrefix:"newdata"
}),
renderers: renderer,
strategies: [new OpenLayers.Strategy.BBOX()]
});
map.addLayer(featureLayer);
var click = new OpenLayers.Control.SelectFeature(featureLayer, { onSelect: createPopup, onUnselect: destroyPopup })
map.addControl(click);
click.activate();'
这在InternetExplore中运行良好,但在firefox或Chrome中不起作用(单击该功能时没有响应)。
我不知道它是否与交叉访问有关,但我使用proxy.cgi,它可以工作
谁能告诉我我的代码出了什么问题?或者有其他方法可以做到这一点吗?如果使用多个矢量层,请将它们全部添加到SelectFeature控件中。看 就你而言:
var click = new OpenLayers.Control.SelectFeature([featureLayer, otherFeatureLayer], { onSelect: createPopup, onUnselect: destroyPopup })
在Chrome或firefox中调试时没有错误或其他信息。结果表明,选择“不”响应是因为存在多层。除了这个WFS特征层之外,我还在地图中添加了另一个矢量层,并向这个层添加了选择特征控件。当我移除这个层时,它就工作了。