How to check if Google Maps API is loaded?

前端 未结 10 2187
花落未央
花落未央 2020-12-04 16:12

How to check if Google Maps API (v3) is loaded?

I do not want to execute mapping scripts if the API did not load due to internet connectivity problems (web page is h

10条回答
  •  Happy的楠姐
    2020-12-04 17:09

    A simple if(google && google.maps) check didn't work for me; I still get an error when I try to access the API:

    TypeError: google.maps.LatLng is not a constructor

    In my case this is probably due to my mouse event handlers being triggered before the maps API has even finished downloading. In this case, to reliably check if maps is loaded, I create a "gmaps" alias and initialise it on dom ready (using JQuery):

    var gmaps;
    $(function () {
        gmaps = google.maps;
    });
    

    then in my event handlers I can simply use:

    if(gmaps) {
        // do stuff with maps
    }
    

提交回复
热议问题