繁体   English   中英

标记上的弹出窗口无法正常工作

[英]Popup on marker not working properly

我正在尝试为标记分配一个弹出窗口。 我创建了一个弹出窗口,并将其绑定到标记。 但是,它没有出现。 我已经对显示的alert()进行了测试,但是没有弹出窗口。

有人可以帮忙解决这个问题吗?

var lonLatMarker = new OpenLayers.LonLat( 78.447876 ,17.371610 )
.transform( new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
    map.getProjectionObject() // to Spherical Mercator Projection
    );
var feature = new OpenLayers.Feature(markers, lonLatMarker);
feature.closeBox = true;
feature.popupClass = OpenLayers.Class(OpenLayers.Popup.AnchoredBubble, {
    minSize: new OpenLayers.Size(300, 180)
} );
feature.data.popupContentHTML = 'Hello World';
feature.data.overflow = "hidden";

var marker = new OpenLayers.Marker(lonLatMarker);
marker.feature = feature;

var markerClick = function(evt) {
    if (this.popup == null) {
        this.popup = this.createPopup(this.closeBox);
        map.addPopup(this.popup);
        this.popup.show();
    } else {
        alert("Hello");
        this.popup.toggle();
    }
    OpenLayers.Event.stop(evt);
};
marker.events.register("mousedown", feature, markerClick);

markers.addMarker(marker);
map.setCenter (lonLatMarker, 9);

请参考Openlayers文档http://dev.openlayers.org/docs/files/OpenLayers/Marker-js.html#OpenLayers.Marker ,标记对象没有适当的功能

所以我认为您应该删除此行

marker.feature = feature;

我遇到了同样的问题,标记上的click事件无法正常工作,我通过这种方式解决了

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM