关于以下问题:
Unspecified Error from Google Maps API on IE8

在功能上
函数Mp(a,b){..}
以下代码行触发错误
var e = a.getBoundingClientRect();


复制此错误


制作一个Google Map页面(确保它足够高,以确保您有足够的空间来滚动页面,而不是全屏显示地图)
放置标记
以调试模式在IE(我在10中测试过)中打开应用
页面加载后,点击一个标记,使其显示信息窗口,即弹出窗口
尝试滚动页面


您会得到错误。




getBoundingClientRect(),一种IE功能,可返回容器的位置。这些问题可能与工具提示(即信息窗口)有关。

进一步了解:http://ejohn.org/blog/getboundingclientrect-is-awesome/

尝试了解决方案:google.maps.event.clearListeners(window,'resize');
没用


示例应用程序:https://googledrive.com/host/0B-Y3wXhWdoQebnBUV2RNRWhJZE0/test-shell.html
礼貌:@ user2250544

最佳答案

如果您喜欢这种东西,这似乎是个肮脏的骇客:

HTMLElement.prototype.getBoundingClientRect = (function () {
    var oldGetBoundingClientRect = HTMLElement.prototype.getBoundingClientRect;
    return function() {
        try {
            return oldGetBoundingClientRect.apply(this, arguments);
        } catch (e) {
            return {
                left: '',
                right: '',
                top: '',
                bottom: ''
            };
        }
    };
})();

09-11 13:51