1

如果您在 IE10 中查看以下示例http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclusterer/1.0/examples/advanced_example.html - 它显示点但不显示集群图标。

任何人都知道问题是什么/是否有修复?

4

3 回答 3

2

强制浏览器进入 IE9 模式是不好的做法——尤其是因为 MarkerClusterer。而是修改第 956 行的代码(https://code.google.com/p/google-maps-utility-library-v3/source/browse/trunk/markerclusterer/src/markerclusterer.js?r=110#956)由此:

if (document.all) {
    style.push('filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(' + 'sizingMethod=scale,src="' + this.url_ + '");');
} else {
    style.push('background:url(' + this.url_ + ');');
}

对此:

style.push('background:url(' + this.url_ + ');');
于 2013-06-03T10:54:57.420 回答
1

我遇到了同样的问题,你需要在页面的 head 部分中添加以下代码以强制浏览器进入 IE9 模式

<meta http-equiv="X-UA-Compatible" content="IE=9"/>

如果您在 IFRAME 内显示地图,则必须将其添加到母版页。

nb 您需要关闭并重新打开浏览器才能看到地图正常工作。

有关详细信息,请参阅此工作示例

于 2013-05-16T12:24:27.377 回答
1

我找到了这个问题的另一个原因/解决方法。我正在使用我使用 javascript window.location.origin 引用的地图标记的图像。Internet Explorer (IE) 10 或更低版本无权访问此对象,这导致路径的“未定义”对象。

解决方案:避免使用window.location.origin对象。使用相对路径或以下脚本:

if (!window.location.origin) {
      window.location.origin = window.location.protocol + "//" + window.location.hostname + (window.location.port ? ':' + window.location.port: '');
    }

这个脚本不是我的,我在网上找到的。希望这可以帮助。干杯

于 2014-09-24T02:38:58.983 回答