Gmap API:初始化后加载transitLayer

时间:2017-11-06 01:15:29

标签: javascript jquery google-maps google-maps-api-3 google-maps-markers

我正在使用Gmap API显示带有transitLayer的Google地图。我正在努力改进我网站的PageSpeed。其中一件有用的事情是,如果我可以在初始化Google Map后加载transitLayer。我创建了一个fiddle,其中Google地图使用transitLayer初始化。是否可以在初始化谷歌地图后添加transitLayer?

function initMap() { 
      var map = new google.maps.Map(document.getElementById('map'), { 
      zoom: 13, 
      center: {lat: 51.501904, lng: -0.115871} 
      }); 

  var transitLayer = new google.maps.TransitLayer(); 
  transitLayer.setMap(map); 

}  

1 个答案:

答案 0 :(得分:0)

我不确定在谷歌地图初始化之后你的意思是什么。我想您可以使用为Map类定义的事件之一,例如tilesloadedidle

https://developers.google.com/maps/documentation/javascript/reference#Map

所以,代码可能类似于

function initMap() { 
  var map = new google.maps.Map(document.getElementById('map'), { 
    zoom: 13, 
    center: {lat: 51.501904, lng: -0.115871} 
  }); 

  google.maps.event.addListenerOnce(map, "idle", function() {
    var transitLayer = new google.maps.TransitLayer(); 
    transitLayer.setMap(map);
  });
}