2010-01-10 1 views
1

Я использую API-интерфейс google map вместе с MarkerManager. Я загружаю 2 javascript-библиотеки JQuery.Карты Google и Markermanager вызывают ошибку

Вот мой Javascript:

function initialize() { 
    $.getScript('http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/release/src/markermanager.js'); 
    $.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC'); 

} 
function mapLoaded() { 
    if (GBrowserIsCompatible()) { 
     map = new GMap2(document.getElementById("map_canvas")); 
     map.setCenter(new GLatLng(18, -77.4), 13); 
     map.setUIToDefault(); 

     var mgr = new MarkerManager(map); 
     mgr.addMarkers(getWeatherMarkers(), 5); //gets some marker from another function 
     mgr.refresh(); 

    } 
} 

Я получаю ошибку в поджигатель Javascript отладчик:

GBounds не определен [Перерыв на этой ошибке] GBounds.prototype.containsPoint = функция (точка) {\ nmarkerma ... 109501758 (строка 377)

me.getMapGridBounds_ не является функцией [Перерыв на этой ошибке] me.shownBounds_ = me.getMapGridBounds _(); \ п markerma ... 1 09501758 (строка 106)

Эта ошибка также возникает, если я загружаю библиотеку javascript статически.

Спасибо,

ответ

3

Есть две проблемы с кодом, который я вижу.

Во-первых, вы не используете новейший verson of MarkerManager. Используйте новый здесь:

http://gmaps-utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js

Во-вторых, библиотека MarkerManager требует API GoogleMaps, который будет загружен первым.

Start переключая заказ (я не думаю, что это будет работать):

$.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC'); 
$.getScript('http://gmaps-utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js'); 

Но, скорее всего, вам будет нужно что-то вроде этого:

function initialize() { 
    $.getScript('http://maps.google.com/maps?file=api&v=2&async=2&callback=mapLoaded&sensor=true_or_false&key=ABC'); 
} 
function mapLoaded() { 
    $.getScript('http://gmaps-utility-library-dev.googlecode.com/svn/tags/markermanager/1.1/src/markermanager.js', function(){ 
     if (GBrowserIsCompatible()) { 
      map = new GMap2(document.getElementById("map_canvas")); 
      map.setCenter(new GLatLng(18, -77.4), 13); 
      map.setUIToDefault(); 

      var mgr = new MarkerManager(map); 
      mgr.addMarkers(getWeatherMarkers(), 5); //gets some marker from another function 
      mgr.refresh(); 
     }   
    }); 
} 
+0

Google переехал MarkerManager на Github , Здесь вы найдете новую версию: https://raw.githubusercontent.com/googlemaps/v3-utility-library/master/markermanager/src/markermanager_packed.js – Tino