我有一个功能:
function images_styles(Isel){
if (Isel==1){
var marker_pic="/sites/all/themes/shakhty/images/map/icons/1.png";
}
else{
var marker_pic="http://www.openlayers.org/dev/img/marker.png";
}
var styleImage = new OpenLayers.Style({
graphicWidth: 43,
graphicHeight: 65,
graphicYOffset: -28,
label: "${label}",
externalGraphic: marker_pic,
fontSize: "1em",
strokeOpacity:5
});
var vectorImage = new OpenLayers.Layer.Vector("Images", {
styleMap: new OpenLayers.StyleMap({
"default": styleImage
})
});
map.addLayer(vectorImage);
}
当用户在表单中选择变体时,我想更改图像(marker_pic)。但是当变体第一次选择时,图像不会改变,直到我重新加载页面。
我该怎么办?
每次用户选择其他版本时如何刷新图像?
答案 0 :(得分:0)
要使用新的外部图形更新矢量图层,请尝试以下操作:
vectorImage.refresh({force:true});
或者,以下内容也可以起作用:
vectorImage.redraw();