1

두 개 이상의지도 인스턴스를 동적으로 생성하고 표시되지 않는 이상한 버그가있는 경우 Chrome 5.0.375.99 : 의 Google지도에서 매우 이상한 문제가 발생했습니다. 제대로,지도 공간의 일부분에서만 보여줍니다.동적 Google지도 통합 관련 문제

일부 예제 페이지 :
one default - addOne을 클릭하면 새 개체에 문제가 있습니다.
none default - 두 번째로 addOne을 클릭하면 새 개체에 문제가 있습니다.
two default - 두 초기지도는 모두 올바르게 표시되지만 addOne을 클릭하면 새 개체에 문제가 있습니다.

정말 대단한 부분은 창 크기를 조정하면 부적절하게 표시되는지도가 올바르게 표시되어 강제로 수정된다는 것입니다. 이로 인해 수정되는 것은 다시 그리기 이벤트입니다.

+0

그래도 그것을 테스트 당신이 googleMap''것을 위 얻을 어디서 : 다음 시도 할 수 DIV

지도를 작성하기 전에 너비 높이를 설정하려면 플러그인? div에 차원을 설정하려고하지만 * 이미 *지도를 초기화 한 후입니다. 너비와 높이가 설정되지 않은 동적지도 div가 생성되는 경우지도를 초기화 할 때 GMaps에 치수가 제대로 설정되지 않습니다. –

+0

http://awardwinningfjords.com/2009/07/22/google-maps-with-jquery.html에서 수정했습니다. .cach를 .cach로 바꾸면 같은 결과가납니다. – Rixius

답변

1

Crescent Fresh는 div의 새 차원을 초기화하기 전에 div의 차원을 설정해야한다는 점에서 정확합니다.

return this.each(function(){ 
    var jT = $(this), 
      center = new mAPI.LatLng(options.lat, options.long), 
      geocoder = new mAPI.Geocoder(); 

    jT.css({ 
     'width': hw[0], 
     'height': hw[1], 
     'margin-left': 'auto', 
     'margin-right': 'auto' 
    }); 

    jT.data('map', new mAPI.Map(this, $.extend(options, { center: center }))); 

    geocoder.geocode({ address: address }, function(results, status) { 
     if (status === mAPI.GeocoderStatus.OK && results.length) { 
      if (status !== mAPI.GeocoderStatus.ZERO_RESULTS) { 
       jT.data('map').setCenter(results[0].geometry.location); 
       var dump = new mAPI.Marker({ 
         position: results[0].geometry.location, 
         map: jT.data('map') 
       }); 
       return dump; 
      } 
     } 
    }); 
}); 

는 '해야'작업 havent 한이