Я наконец-то реализовал API карт в jquery accordion, в основном, изменив
var map;
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
до
var map = null;
return new google.maps.Map($('#map_canvas')[0], myOptions);
это функционально, однако стилизация карты и маркера не видны.
var map = null;
var latlng = new google.maps.LatLng(40.744098,-73.95348);
function initializeMap() {
var myOptions = {
zoom: 15,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var styles = [ {
featureType: "all",
stylers: [ { saturation: -100 }, { invert_lightness: true }, { lightness: 2 }, { gamma: 1.29 } ]
}];
return new google.maps.Map($('#map_canvas')[0], myOptions); map.setOptions({styles:styles});
var marker = new google.maps.Marker({
position: latlng,
map: map,
});
}
$(document).ready(function() {
$("#accordion").accordion();
$("#accordion").bind('accordionchange', function(event, ui) {
if (ui.newContent.attr('id') == 'tabThree' && !map)
{
map = initializeMap();
}
});
});
Кто-нибудь знает, как правильно эти стили?