Клуб API Карт

лаг на слайде с яндекс картой

Пост в архиве.

Доброго времени суток!

 

На странице http://funnyf.bget.ru/ во втором слайде подключаю Яндекс карту следующим образом:

  

<script type="text/javascript" src="http://api-maps.yandex.ru/2.1/?&lang=ru-RU"></script>

<script type="text/javascript">

    ymaps.ready(function(){

        mapexMap = new ymaps.Map("mapexMap", {

            center: [55.7099140948,37.5756615435],

            zoom: 17,

            controls: ['largeMapDefaultSet']

        });

        mapexMap.geoObjects.add(new ymaps.Placemark([55.7098050619,37.5767317202], {"iconContent":"\u041c\u0435\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0438","balloonContentBody":"","balloonContentHeader":"\u041c\u0435\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0438"}, {"preset":"twirl#blueStretchyIcon"}));

    });

</script>

 

После того, как страница загружена, и я делаю скрол либо с помощью мыши, либо по ссылке "Место" из верхнего меню, переход ко второму слайду, где расположена данная карта, происходит не плавно, а с задержками и рывками. Если повторить данное действие на загруженной странице 2-3 раза, то потом переход становится плавным.

 

Если убрать карту из второго слайда, то переход всегда плавный.

 

Подскажите, пожалуйста, связано ли это с тем, что после загрузки DOM карта все равно может подгружать какие-либо файлы?

3 комментария
Всеволод Шмыров
27 января 2016, 23:16
Добрый вечер. API после срабатывания DOM подгружает необходимые модули и тайлы, но не это вызывает лаги, а изменение DOM (подстановка тайлов, инициализация макетов и прочее). У вас на сайте используется CSS анимация для организации прокрутки страницы. Это сама по себе не очень быстрая операция.

спасибо большое) буду оптимизировать остальные части страницы. скорее всего это из-за подгрузки фотографий большого размера в слайдеры в 3 и 7 секциях.

 

а есть ли возможность грузить тайлы до завершения загрузки DOM, а не после того, как DOM загружен?

Всеволод Шмыров
27 января 2016, 23:16
Такой возможности нет.