Загрузка яндекс карты по требованию

N2
На сайте с 12.12.2009
Offline
52
5323

Здравствуйте! Помогите сделать карту для сайта. На сайте есть множество страниц, имеющие данные: город (например вида "Новосибирск") и адрес (например вида "Ленина, 18"), по этим данным нужно создавать карту с отметкой адреса. Карта должна разворачиваться при клике по ссылке "показать карту". Нашёл решение:

<div id="map" style="width: 600px; height: 400px"></div>

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

<script type="text/javascript">

ymaps.ready(init);

function init() {

var myMap = new ymaps.Map('map', {

center: [64.06, 100.11],

zoom: 2

});

ymaps.geocode('<?echo 'Россия, Новосибирск, Ленина 18';?>', {

results: 1

}).then(function (res) {

var firstGeoObject = res.geoObjects.get(0),

coords = firstGeoObject.geometry.getCoordinates(),

bounds = firstGeoObject.properties.get('boundedBy');

myMap.geoObjects.add(firstGeoObject);

myMap.setBounds(bounds, {

checkZoomRange: true

});

console.log('Все данные геообъекта: ', firstGeoObject.properties.getAll());

console.log('Метаданные ответа геокодера: ', res.metaData);

console.log('Метаданные геокодера: ', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData'));

console.log('precision', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData.precision'));

console.log('Тип геообъекта: %s', firstGeoObject.properties.get('metaDataProperty.GeocoderMetaData.kind'));

console.log('Название объекта: %s', firstGeoObject.properties.get('name'));

console.log('Описание объекта: %s', firstGeoObject.properties.get('description'));

console.log('Полное описание объекта: %s', firstGeoObject.properties.get('text'));

});

}

</script>

Но как я понимаю Загрузка карты в самом начале будет тормозить загрузку сайта, даже если карту поместить в скрытом элементе.

Есть пример https://yandex.github.io/mapsapi-examples-old/html/maploadbyrequire.html

Можно ли объединить эти два примера, что бы карта с произвольной отметкой адреса загружалась по требованию? Ещё желательно балун со своим html и минимум элементов управления на карте (не нужны пробки, не нужна линейка и тд.), нужен только зум и слои. Не чего лишнего в коде.

Samail
На сайте с 10.05.2007
Offline
333
#1

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий