2
我有一個OpenLayers.Layer.Vector層,這樣的事情:如何防止OpenLayers.StyleMap和OpenLayers.SelectFeature發生衝突?
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設定行,我所有的功能變得無法點擊且無響應。這些風格不僅不反映國家,而且各州似乎也沒有改變。
我需要做些什麼來維護自定義樣式並讓圖層具有可移動性和/或可點擊性?