如果您在 IE10 中查看以下示例http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclusterer/1.0/examples/advanced_example.html - 它显示点但不显示集群图标。
任何人都知道问题是什么/是否有修复?
如果您在 IE10 中查看以下示例http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclusterer/1.0/examples/advanced_example.html - 它显示点但不显示集群图标。
任何人都知道问题是什么/是否有修复?
强制浏览器进入 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_ + ');');
我遇到了同样的问题,你需要在页面的 head 部分中添加以下代码以强制浏览器进入 IE9 模式
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
如果您在 IFRAME 内显示地图,则必须将其添加到母版页。
nb 您需要关闭并重新打开浏览器才能看到地图正常工作。
有关详细信息,请参阅此工作示例。
我找到了这个问题的另一个原因/解决方法。我正在使用我使用 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: '');
}
这个脚本不是我的,我在网上找到的。希望这可以帮助。干杯