我需要显示一张地图(世界地图,使用默认OpenLayers
WMS)和一个点(带有 onhover 等事件)。这是我的代码:
var options = {
projection: new OpenLayers.Projection("EPSG:900913"),
maxResolution: 6000
};
map = new OpenLayers.Map('map', options);
var wmsLayer = new OpenLayers.Layer.WMS(
"OpenLayers WMS",
"http://vmap0.tiles.osgeo.org/wms/vmap0",
{layers: 'basic'}
);
var vectors = new OpenLayers.Layer.Vector("Vector Layer");
point = new OpenLayers.Geometry.Point(20.088844299316406, 51.8321709083475);
vectors.addFeatures([new OpenLayers.Feature.Vector(point)]);
map.addLayers([wmsLayer, vectors]);
map.zoomToMaxExtent();
但是这段代码定位的点不是画在正确的地方,而是在非洲附近的某个地方(那个地方 lat 和 lon 是 0, 0)。问题:为什么会发生这种情况,我可以解决它吗?我只需要将点定位到正确的位置。悖论当我在控制台中打印这一点时,它显示点 lan 和 lon 是需要的(如定义的那样)。但它仍然在错误的地方......