Bir*_*ibu 1 popup openlayers marker
我想在我的地图中更新一些弹出窗口,但我无法做到这一点.
首先,我创建了一些标记,然后使用下一个代码创建一个与它们关联的弹出窗口.每个标记一个弹出窗口:
popFeature = new OpenLayers.Feature(markers, location);
popFeature.closeBox = true;
popFeature.popupClass = OpenLayers.Class(OpenLayers.Popup.FramedCloud, {
'autoSize': true
});
popFeature.data.popupContentHTML = "hello";
popFeature.data.overflow = (false) ? "auto" : "hidden";
var markerClick = function (evt) {
if (this.popup == null) {
this.popup = this.createPopup(this.closeBox);
map.addPopup(this.popup);
this.popup.show();
} else {
this.popup.toggle();
}
currentPopup = this.popup;
OpenLayers.Event.stop(evt);
};
mark.events.register("mousedown", popFeature, markerClick);
Run Code Online (Sandbox Code Playgroud)
之后,我将新标记添加到我的标记图层.
一切都很好,直到这里,但是,我想稍后更新popupcontentHTML,我不知道如何访问该值.
我读了OL API,但我不明白如何得到它.我迷失了功能,事件,扩展......
我想知道我是否可以访问该属性并写下其他单词.
我回答自己,也许它将来有助于其他人:
for(i = 0; i < map.popups.length; i++){
if(map.popups[i].lonlat.lon == marker.lonlat.lon){
map.popups[i].setContentHTML("new content");
}
}
Run Code Online (Sandbox Code Playgroud)
内容将在此刻刷新.