Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌地图和Markermanager抛出错误_Javascript_Jquery_Google Maps_Markermanager - Fatal编程技术网

Javascript 谷歌地图和Markermanager抛出错误

Javascript 谷歌地图和Markermanager抛出错误,javascript,jquery,google-maps,markermanager,Javascript,Jquery,Google Maps,Markermanager,我在使用谷歌地图API的同时还使用了。我通过JQuery加载了2个javascript库 以下是我的Javascript: function initialize() { $.getScript('http://gmaps-utility-library.googlecode.com/svn/trunk/markermanager/release/src/markermanager.js'); $.getScript('http://maps.google.com/maps?fi

我在使用谷歌地图API的同时还使用了。我通过JQuery加载了2个javascript库

以下是我的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();

    }
}
我在firebug javascript调试器中遇到的错误是:

未定义GBounds [在此错误上中断]GBounds.prototype.containsPoint=函数(点){\n标记…109501758(第377行)

me.getMapGridBounds_uu不是函数 [Break on this error]me.shownBounds\uuz=me.getMapGridBounds\uz();\n markerma…109501758(第106行)

如果静态加载javascript库,也会发生此错误


谢谢,

我看到您的代码有两个问题

首先,您没有使用MarkerManager的最新版本。请在此处使用新版本:

其次,MarkerManager库要求首先加载GoogleMaps API

首先切换顺序(我认为这行不通):

但更可能的是,您需要这样的东西:

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();
      }          
    });
}

Google将MarkerManager移动到Github。您将在此处找到新版本:
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();
      }          
    });
}