У меня возникли проблемы с загрузкой Карты Google в iframe. Я хочу сделать something like this, но внутри iframe. Я пробовал по-разному:Как загрузить карту Google в iframe с помощью Javascript?
Пытается вызвать функцию showNewMap() перед загрузкой скрипта. Но я получаю следующее сообщение об ошибке: неперехваченный TypeError: Object [объекте глобальными] не имеет метода 'showNewMap': http://jsfiddle.net/9RE4h/1/
var iframe = document.createElement("iframe");
document.body.appendChild(iframe);
var doc = iframe.contentWindow || iframe.contentDocument;
if (doc.document) { doc = doc.document;}
function showNewMap() {
var mapContainer = doc.createElement('div');
mapContainer.setAttribute('style',"width: 500px; height: 300px");
doc.body.appendChild(mapContainer);
var mapOptions = {
center: new google.maps.LatLng(-35.000009, -58.197645),
zoom: 5,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(mapContainer,mapOptions);
}
var script = doc.createElement('script');
script.type = 'text/javascript';
script.src = 'https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true&' + 'callback=showNewMap';
doc.getElementsByTagName('head')[0].appendChild(script);
Любую идея, чтобы решить эту проблему?
Спасибо так много! – gal007
Он не работает на Firefox :( – gal007
@ gal007 Похоже, что код * может быть запущен до того, как HTML был загружен. В JSFiddle я не уверен, что будет правильным событием, чтобы убедиться, что DOM загружен сначала вы можете запустить это локально и подключиться к событию onload. – elevine