我正在使用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);
}
答案 0 :(得分:0)
我不确定在谷歌地图初始化之后你的意思是什么。我想您可以使用为Map类定义的事件之一,例如tilesloaded
或idle
。
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);
});
}