-1

Gmap API를 사용하여 transitLayer과 함께 Google지도를 표시하고 있습니다. 내 웹 사이트의 PageSpeed을 개선하려고합니다. Google지도가 초기화 된 후 transitLayer를로드 할 수 있다면 도움이 될 것입니다. Google지도가 transitLayer로 초기화되는 fiddle을 만들었습니다. Google지도가 초기화 된 후 transitLayer를 추가 할 수 있습니까?Gmap API : 초기화 후 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

같은 당신의 바이올린이 작동하지 않을 수있는 코드는 크롬에 나를 위해 작동, 이상한 – geocodezip

+0

(오류'initMap가 function'없는 생산) Firefox 및 다른 장치에서이 오류를 재현 할 수 없습니다. 누군가이 오류를 확인할 수 있습니까? – user3398797

답변

0

Google지도를 초기화 한 후에 무슨 뜻인지 확실하지 않습니다. 예를 들어 tilesloaded 또는 idle과 같이 Map 클래스에 대해 정의 된 이벤트 중 하나를 사용할 수 있다고 가정합니다.

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