Openlayers 2 显示 iPhone 的粉红色地图(图层)



我的目标是通过智能手机跟踪我当前的位置并在地图上显示。为此,我正在使用开放层 2。

但是现在我有以下问题。 当我在Chrome浏览器(桌面,Android(中使用以下代码时,它可以正常工作。如果我在iPhone(Safari,Chrome(中打开同一页面,我总是得到一个带有位置标记的粉红色层,而不是地图。

<div id="mapdiv"></div>
<script src="OpenLayers.js"></script>

<script>

map = new OpenLayers.Map("mapdiv");
map.addLayer(new OpenLayers.Layer.OSM());
var lonLat = new OpenLayers.LonLat( -0.1279688 ,51.5077286 )
.transform(
new OpenLayers.Projection("EPSG:4326"), // Transformation aus dem Koordinatensystem WGS 1984
map.getProjectionObject() // in das Koordinatensystem 'Spherical Mercator Projection'
);
var zoom=16;
var markers = new OpenLayers.Layer.Markers( "Markers" );
map.addLayer(markers);

markers.addMarker(new OpenLayers.Marker(lonLat));

map.setCenter (lonLat, zoom);

</script> 

有人可以在这里帮助我吗?

可能是由于内容混合,OSM url 的 OpenLayers 2 默认为 http,请尝试指定 https

map.addLayer(new OpenLayers.Layer.OSM(
"OpenStreetMap", [
"https://a.tile.openstreetmap.org/${z}/${x}/${y}.png",
"https://b.tile.openstreetmap.org/${z}/${x}/${y}.png",
"https://c.tile.openstreetmap.org/${z}/${x}/${y}.png"
]
));

相关内容

  • 没有找到相关文章

最新更新