2013-04-25 2 views
0

어제부터 문제를 해결하기 위해 노력하고 있지만 주변을 둘러 볼 수 없습니다. Google지도를 비동기 적으로로드하지만 다음 코드는 infobox가 올바르게로드되지 않아서 오류가 발생합니다.Google지도를 infobox 오류로 비동기 적으로로드 중입니다.

내 오류는 다음과 같습니다 인포 박스는

내 코드가 정의되지 않은 :

function loadScript(callback) { 
    var map = document.createElement('script'); 
    map.type = 'text/javascript'; 
    map.src = 'https://maps.googleapis.com/maps/api/js?key=my_key_goes_here&sensor=false&callback=initialize'; 
    document.body.appendChild(map);    
    map.onload = function() { 
     var box = document.createElement('script'); 
     box.type = 'text/javascript'; 
     box.src = 'https://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/src/infobox_packed.js'; 
     document.body.appendChild(box); 
     box.onload = callback; 
    }; 
}   
window.onload = loadScript; 

답변

0

당신은 당신의 loadScript, '콜백'에 인수를 지정합니다. 그런 다음 map.src에서 callback=initialize을 지정하십시오. window.onload에서 loadScript를 호출하지만 인수를 지정하지 않았습니다. 그래서 box.onload는 callback에 대한 어떤 가치도 모르겠다. 그것은 마술처럼 map.src 문자열에서 '초기화'를 추측 할 수 없기 때문에 나는 짐작하고있다.

의미가 있습니까?

+0

예, 완전히 이해합니다. 내가 여기 내 대답을 가지고 http://stackoverflow.com/questions/12148279/load-js-scripts-asynchronously-in-order-waiting-the-previous-one-is-complete하지만 문제가 보이지만, t fix it :( –

+0

사실지도로드 또는 상자로드에서 초기화 기능을 실행 하시겠습니까? – duncan

+0

작동하려면 박스로드에서 실행해야합니다. –

관련 문제