我有一个 OpenLayers.Layer.Vector 层,如下所示:
layer = new OpenLayers.Layer.Vector("zzzzz", {
strategies: [
new OpenLayers.Strategy.Fixed(),
],
// styleMap: new OpenLayers.StyleMap({
// 'default': { .. layer styles here ..}
// 'select': { .. selected styles here ..}
// }),
protocol: new OpenLayers.Protocol.HTTP({
url: "/kml/zzzzzz.kml",
renderers: ['Canvas','SVG'],
format: new OpenLayers.Format.KML({
extractStyles: false,
extractAttributes: true,
maxDepth: 0
})
})
});
然后我有一个 OpenLayers.Controls.SelectFeature 控件,如下所示:
selectFeature = new OpenLayers.Control.SelectFeature(
[layer],
{
renderIntent: "select",
clickout: true,
toggle: true
}
);
然后,我将它添加到地图中,如下所示:
map = new OpenLayers.Map('map');
map.addLayer(layer);
map.addControl(selectFeature);
selectFeature.activate();
现在,在我取消注释这些 styleMap 行的那一刻,我的所有功能都变得不可点击且无响应。不仅样式不反映状态,而且状态似乎根本没有改变。
我需要做什么来维护自定义样式并使图层可悬停和/或可点击?