OpenLayers:在 Internet Explorer 中不起作用

Posted

技术标签:

【中文标题】OpenLayers:在 Internet Explorer 中不起作用【英文标题】:OpenLayers: Does not work in internet explorer 【发布时间】:2015-12-17 22:39:15 【问题描述】:

我有这个简单的代码:

<html>
<head>
<title>Vector Icon Example</title>
<script src="https://code.jquery.com/jquery-1.11.2.min.js"></script>
<link rel="stylesheet" href="../apidoc/styles/bootstrap.min.css">
<script src="../apidoc/scripts/bootstrap.min.js"></script>
    <link rel="stylesheet" href="../css/ol.css" type="text/css">
<script src="../build/ol.js"></script>


</head>
<BODY>
<div id="map" style="width: 100%, height: 400px">ggg</div>
<script>
  new ol.Map(
    layers: [
      new ol.layer.Tile(source: new ol.source.OSM())
    ],
    view: new ol.View(
      center: [0, 0],
      zoom: 2
    ),
    target: 'map'
  );
</script>
</BODY>
</HTML>

它在 chrome 中正常工作,但在 IE 11 中没有任何显示。问题出在哪里?

【问题讨论】:

看看这是否有帮助 - ***.com/questions/29954301/… 这个元标记帮助了我! 谢谢! 也许您可以发布自己的答案并接受它。 【参考方案1】:

这解决了我的问题:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

【讨论】:

【参考方案2】:
new OpenLayers.Layer.OSM()

在 IE11 上也不适用于我。

我尝试使用 https 方案,因为对于 openstreetmap 磁贴从 http 重定向到 https 进行了更改:

new OpenLayers.Layer.OSM(
            name: "OpenStreetMap",
            url: ["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"],
            tileOptions: crossOriginKeyword: null,
            crossOrigin: null
        );

在 IE11 中仍然没有从我的本地渲染。还提供元标记无济于事...

另一个工作正常(但我需要 X.tile.openstreetmap.org 进行渲染):

 new OpenLayers.Layer.OSM("OpenCycleMap",
                   ["http://a.tile.opencyclemap.org/cycle/$z/$x/$y.png",
                    "http://b.tile.opencyclemap.org/cycle/$z/$x/$y.png",
            "http://c.tile.opencyclemap.org/cycle/$z/$x/$y.png"]);

【讨论】:

【参考方案3】:

这对我有用:

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"]);

【讨论】:

以上是关于OpenLayers:在 Internet Explorer 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

EXP6 信息搜集与漏洞扫描

20155211 Exp6 信息搜集与漏洞扫描

20155205 郝博雅 Exp6 信息搜集与漏洞扫描

在openlayers中,如何在输入地名之后,在地图的对应的位置就标记出来呢?该怎么实现?

openlayers二次简单封装 线性、点

openlayers添加标注(含聚合标注)、覆盖物、绘制路线