Можете ли вы вставить карту Google на страницу через AJAX - PullRequest
2 голосов
/ 16 октября 2011

Я использую API javascript Google Maps V3 для создания карты Google. Это работает нормально, но на моей карте много маркеров, и поэтому создается много javascript, что делает страницу размером около 5 МБ, и поэтому время загрузки страницы огромно (более 20 секунд)! Вместо этого я хотел вытянуть карту через ajax, чтобы я мог отображать gif-загрузчик ajax до тех пор, пока он не будет загружен. Я не могу заставить его работать, хотя Я вытаскиваю javascript и все остальное и вставляю его в страницу, но карта не загружается. Нужно ли вызывать функцию инициализации, когда код находится на странице или что-то в этом роде?

1 Ответ

0 голосов
/ 18 октября 2011

Вы можете использовать addListener для привязки события к состоянию незанятости вашей карты.

Так что, возможно, вы можете загрузить его скрытым в фоновом режиме, отобразить счетчик, дождаться события и затем отобразить его.

Что-то вроде:

google.maps.event.addListener(yourmap, 'idle', function()
{
if(!mapLoaded) $('#yourmapdiv').trigger('mapLoaded');
mapLoaded=true; 
});

Тогда:

$('#yourmapdiv').bind('mapLoaded', function(){
// hide your spinner, show your map
});

Я не уверен в том, что состояние бездействия касается только загрузки плиток или всех маркеров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...