2014-01-14 2 views
0

내 웹 사이트에 Google Maps API v3을 통합하는 데 문제가 있습니다. 여기 내 코드는 다음과 같습니다.Google지도로드 확인

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=xxxx&sensor=true"></script><script> 
var map; 
function initialize() { 
var mapOptions = { 
    center: new google.maps.LatLng(<?php echo $lat;?>,<?php echo $lng;?>), 
    //center: new google.maps.LatLng(32.295439,-64.7795), 
    zoom: 17, 
    mapTypeId: google.maps.MapTypeId.SATELLITE 
}; 
map = new google.maps.Map(document.getElementById("map-canvas"), 
    mapOptions); 
var lL = new google.maps.LatLng(xxx,xxx); 
var marker = new google.maps.Marker({ 
     position: lL, 
     map: map 
    }); 
alert('map loaded') 
} 
google.maps.event.addDomListener(window, 'load', initialize); 
</script> 

대개의 경우 경고 및지도가 올바르게 표시됩니다. 때로는 경고가 표시되지만지도는 표시되지 않습니다. 때로는 경고 나지도가 표시되지 않는 경우도 있습니다. 오류 메시지가 기록되지 않습니다. 여기

은 예입니다 bermudareservation.com/lodgings/sea-song/

나는 모든 브라우저에서이 테스트와 동일한 동작을 보여줍니다. WP를 사용하고 있으므로 플러그인을 사용해 보았지만 같은 일이 발생했습니다.

사용자가 페이지를 볼 때마다지도가로드되도록하려면 어떻게해야합니까?

업데이트 : 리스너 제거되었다, 그러나 그것은 새로운 문제를 만들어

: 때때로 내용 결코 무기한로드 및 로딩 애니메이션이 재생합니다. 내가 어떤 이유로 디버그 도구에 자바 스크립트를 볼 수 없기 때문에 나는 줄 번호에이 문제를 추적 할 수

Uncaught ReferenceError: google is not defined 

: 그렇게되면이 오류는 출력을 얻을 수 있습니다.

답변

1

약 15 번 시도했는데지도가 매번로드됩니다.

하지만 시간이 좀 걸립니다,지도는 온로드 (모든 능숙이로드 될 때)로드됩니다, 당신은 로딩 시간을 단축하기 위해 페이지를 최적화해야 20 ~ 25 초

먼저 후 나를 위해 무엇을 , 예. 크기가 1MB 이상, 최대 2.8MB 인 이미지가 여러 개 있습니다! , 나는 그것이 웹 페이지를위한 no-go 다라고 말할 것이다. 이러한 이미지를 필요한 크기로 조정하고 압축하면 원래 크기의 10 %로 축소됩니다.

이 페이지의로드 된 데이터의 전체 크기는 약 20MB입니다.입니다.

load 사건을 기다릴 필요가 없으며 즉시 initialize으로 전화하십시오. 지도를 초기화하는 스크립트가지도 컨테이너 뒤에 배치되기 때문에지도는 일반적으로 onload으로로드되어지도 컨테이너가 이미 알려져 있지만 페이지에서 컨테이너가 이미 알려져 있는지 확인합니다.

일반적으로 나는 성능 지침 http://yslow.org/를 방문하는 것이 좋습니다 것입니다

+0

좋아, 나는 해결책을 시도하지만 때로는 구글은 초기화가 호출 될 때 정의되지 않은 .. 이미지를 압축 할 수 있습니다 – Cbas

관련 문제