Answer the question
In order to leave comments, you need to log in
How to get the contents of the balloon?
How to get its contents without opening the balloon by clicking on the dot ?
There is a snippet
initMap() {
this.ymap = new ymaps.Map(this.params.map.id, {
center: [this.params.addresses[0].dataset.lat, this.params.addresses[0].dataset.lng],
zoom: this.params.zoom,
controls: []
})
this.params.myCollection = new ymaps.GeoObjectCollection(); // создаю колекцию для точек
this.addMarkers();
}
addMarkers() {
this.params.myCollection.removeAll();
this.params.addresses.forEach(coordinate => {
let myPlacemark = new ymaps.Placemark( // создаю метки
[parseFloat(coordinate.dataset.lat), parseFloat(coordinate.dataset.lng)], {
balloonContentBody : coordinate.dataset.balloonContent,
hintContent : coordinate.dataset.balloonTitle
}, {
iconLayout : 'default#imageWithContent',
iconImageHref : this.params.icon,
iconImageSize : [25, 33],
iconImageOffset : [-12.5, -33] // От верхнего правого угла.
}
);
this.params.myCollection.add(myPlacemark); // добавляю точки в колекцию.
})
this.ymap.geoObjects.add(this.params.myCollection); // добавляю колекцию точек на карту.
this.ymap.setBounds(this.params.myCollection.getBounds()); // центрирую между точками.
if( this.params.addresses.length == 1 ) this.ymap.setZoom( 17 ); // если точка одна setBounds работает не правильно.
this.ymap.container.fitToViewport();
this.mapEvents();
}
mapEvents() {
this.ymap.geoObjects.events.add('click', function (event) {
console.log( event.get('balloon') )
// здесь хочу получить ссылку которая лежит в балуне , но не нужно балун открывать. Подскажите что нить
});
}
Answer the question
In order to leave comments, you need to log in
Solved the problem by changing the collection to ObjectManager.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question