2013-04-10 2 views
2

사용자 위치를 얻고 그 위치를 중심으로 한 다음지도의 고정 된 위치에 길 찾기를 제공해야하는 Google지도가 있습니다.Google지도가 정확하게 div를 채우지 못합니다.

문제는지도가 전체 div을 채우고 있지 않으며 올바른 위치로 센터링하거나 확대하는 것이 아니라 사용자 위치를로드하고 길 찾기를 제공하는 것입니다. jsFiddle에서 재 작성하면 제대로 작동하지만 내 사이트에 포함될 때 설명 된 문제가 발생합니다.

jsFiddle : 내 사이트에 포함 할 때 보이는 방법 http://jsfiddle.net/wXnjt/1/

. Map Bug

이 문제의 원인은 무엇입니까? (내 코드가 피들에 가지 않고 여기에 게시되기를 원한다면 알려주십시오.)

EDIT : 또한 dev 콘솔에 오류가 나타나지 않습니다. 나는 또한 preserveViewport: true을 사용해 보았지만 효과가 없었다.

+0

try : google.maps.event.trigger (map, 'resize'); –

+0

페이지를 링크 클릭으로로드하는 위치에 추가하려고했지만지도의 약 3/4 크기로만 크기가 조정되었으며 여전히 올바른 위치로 센터링되지 않았거나 확대되었습니다. 나는 그것을 잘못된 장소에 놓았 는가, 아니면 효과가 있었는가? – Colin747

+0

이 문제는 IE에서만 발생합니까 아니면 다른 브라우저에서도 테스트 해 보셨나요? –

답변

2

Google지도 초기화가 제대로 작동하지 않는 경우 기능이 있어야합니다. 그런 다음 토글 한 후에 만지도를 초기화 할 수 있으며, 사용자가지도를 보지 않으려는 경우로드되지 않도록합니다.

function init_maps(){ 

    // google maps api goes here 

} 

var init = false; 

$('.contact_us').click(){ 

    if(!init){ 

     init_maps(); 
     init = true; 
    } 

    $('.contact_us').slideToggle(); 

} 
+0

'init_maps()'함수에 맵 코드를 넣었지만 올바르게 호출하지 못했다고 생각합니다. '$ ("# Contact"). on ("click", function (event) $ removeClass ('activeTab'); $ (this) .addClass ('activeTab'); $ ("#ContentContent") show(); $ ("# divs") .hide(); 경우 (초기화) { init_maps(); 초기화 = TRUE; }! $ ('#의 mapContainer').slideToggle(); }); ' – Colin747

+0

죄송합니다. 지난 코멘트에서 내 말투를 무시하고 변수를 복사하지 않았습니다. 도와 주셔서 감사합니다! – Colin747

+0

문제 없으므로 환영합니다. 나는 구글 API로 작업 할 때도이 같은 문제를 다루어야했다. :) –

관련 문제