Что вызывает ошибку Google Maps в IE8?

Мы используем Google Maps и выявили проблему, которая возникает только в IE8 (и, возможно, ниже). Функционал корректно работает в FF, Chrome, IE9.

Код, в котором возникает ошибка:

google.load("maps", "3.x", { other_params: "sensor=false" });
    var mapdiv = null;
    $(function () {
        mapdiv = document.getElementById("map");
        map = new google.maps.Map( mapdiv, {
            zoom: 1,
            center: new google.maps.LatLng(6, 35),
            disableDefaultUI: true,
            mapTypeId: google.maps.MapTypeId.TERRAIN
        });
        var latlngbounds = new google.maps.LatLngBounds( );

В частности, в этой строке:

map = new google.maps.Map( mapdiv, {
    zoom: 1,
    center: new google.maps.LatLng(6, 35),
    disableDefaultUI: true,
    mapTypeId: google.maps.MapTypeId.TERRAIN
});

и ошибка:

Объект не поддерживает это свойство или метод

У меня было немного игры с инструментами разработчика IE, и если я заменю map = чем-то вроде var x = , ошибки не будет, поэтому это наводит меня на мысль, что карта объект является виновником отсутствия какого-либо свойства/метода. Хотя я действительно не знаю, откуда берется объект map, я предполагаю, что он загружается из вызова google.load.

Кто-нибудь знает, что здесь происходит?

5
задан gowansg 24 May 2012 в 20:19
поделиться