一次只能激活一个 SelectFeature 控件,除非第二个控件具有 属性highlightOnly = true
。来自 OpenLayers 文档:
highlightOnly {Boolean} - 如果为 true,则实际上不选择特征(即将它们放在图层的选定特征数组中),只需突出显示它们。
尝试添加仅更改样式的第二个 SelectFeature 控件。它应该如下所示:
var hover_feature_control = new OpenLayers.Control.SelectFeature(
[your_layer],
{
hover: true,
highlightOnly: true,
renderIntent: "temporary"
}
);
renderIntent 属性应该与您希望悬停在样式映射中的样式名称相匹配。
styleMap: new OpenLayers.StyleMap({
'default': default_marker_style,
'temporary': hover_marker_style
})
{hover: true}
确保从管理弹出窗口的控件中删除!