У меня есть адрес и маленький значок карты, и когда пользователь нажимает на значок, он загружает Fancybox с данными gMaps в нем.
Теперь, сначала я попытался увидеть, как я могу получить мой
<div id="map"></div>
загрузить в модал Fancybox.
Пытаясь как никогда, разобраться с доступной мне опцией API от Fancybox.net, я бросил и пошел твердо закодированным путем..
$('#details a#map-home').live('click', function(){
var name = $('#details').find('#dFname').text();
var address = $('#details').find('.address').text();
var city = $('#details').find('.city').text();
var state = $('#details').find('.state').text();
var zip = $('#details').find('.zip').text();
var hmap = address + ', ' + city + state + zip;
var tmap = hmap.replace(' ', '+');
$('#details').append('<div style="display: none;"><div id="hmap" style="width: 600px; height: 450px;"></div></div>');
$('a#map-home').fancybox({
'titlePosition' : 'outside',
'title' : 'This is where ' + name + ' lives',
//'transitionIn' : 'none',
//'transitionOut' : 'none',
'modal' : false,
'autoScale' : true,
'autoDimensions' : true,
'centerOnScroll' : true,
'hideOnOverlayClick' : false,
//'overlayOpacity' : 0.15
'onStart' : hMap
//'content' : hMap,
//'href' : 'http://maps.google.com/maps?hl=en&ie=UTF8&hq=&hnear=' + tmap + '&t=h&z=18&iwloc=A&output=embed'
});
function hMap(){
$('#hmap').gMap({
markers: [{
address: "\"" + hmap + "\"",
html: "_address"
}],
address: "\"" + hmap + "\"",
zoom: 18
});
}
return false;
});
Таким образом, когда пользователь нажимает на значок карты, js создает div, который затем загружается с данными gMaps, которые затем загружаются в Fancybox ... (это полный рот)
2 вещи, 1, когда я нажимаю на иконку, ничего не происходит.Мне нужно дважды щелкнуть или выполнить два щелчка, чтобы загрузить Fancybox.2nd fancybox загружает карту, но загружается как 75% карты, а остальные выглядят серыми.Затем я выяснил, что по какой-то причине карта загружается, но со смещением влево: -200px top: -75px или что-то в этом роде.
Есть ли более эффективный способ сделать это?
мой пример вы можете увидеть на сайте www.helixagent.com. Логин test / password перейти к контактам для Test Contact