geoObject.Hint
Менеджер хинта геообъекта. Позволяет управлять хинтом геообъекта, открывать и скрывать его. Использует внутри себя менеджер хинтов карты map.Hint. Геообъекты содержат экземпляр этого класса, доступный как myGeoObject.hint. Не создавайте экземпляры этого класса без необходимости.
См.:GeoObject.hint
Конструктор
geoObject.Hint(geoObject)
Параметры:
Параметр |
Значение по умолчанию |
Описание |
|
— |
Тип: Object Геообъект. |
* Обязательный параметр/опция.
Поля
Имя |
Тип |
Описание |
Менеджер событий хинта геообъекта. |
События
Имя |
Описание |
Скрытие хинта. Экземпляр класса Event. |
|
Показ хинта над геообъектом. Экземпляр класса Event. Имена полей, доступных через метод Event.get: • hint - экземпляр класса Hint. |
Методы
Имя |
Возвращает |
Описание |
Скрывает хинт. |
||
isShown() |
Boolean |
Проверяет состояние хинта на карте. Проксирует вызов Hint.isShown(). |
Передвигает хинт, если он в данный момент показан. |
||
Показывает хинт. |
Описание полей
events
{event.Manager} events
Менеджер событий хинта геообъекта.
Описание событий
hide
Скрытие хинта. Экземпляр класса Event.
show
Показ хинта над геообъектом. Экземпляр класса Event. Имена полей, доступных через метод Event.get:
• hint - экземпляр класса Hint.
Описание методов
hide
{} hide([callback[, urgently]])
Скрывает хинт.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
callback |
— |
Тип: Function Функция, которая будет вызвана после скрытия хинта. |
urgently |
false |
Тип: Boolean Если true, то хинт будет скрыт моментально, без таймаута. |
Пример:
// Моментально (без таймаута) скрываем хинт при клике на нем.
// Примечание: такое поведение также можно реализовать, задав геообъекту опцию hintHideTimeout = false.
myPoint.hint.events.add('mouseleave', function () {
myPoint.hint.hide(function () {
alert('Пока, хинт!');
}, true);
});
isShown
{Boolean} isShown()
Проверяет состояние хинта на карте. Проксирует вызов Hint.isShown().
Returns true, если хинт показывается, false, - если спрятан.
move
{} move(pixelPosition)
Передвигает хинт, если он в данный момент показан.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
|
— |
Тип: Number[] Новая позиция хинта в глобальных пиксельных координатах. |
* Обязательный параметр/опция.
Пример:
// Заставляем хинт двигаться при наведении на геообъект плавными круговыми движениями в размеренном темпе.
var interval = null;
point.hint.events
.add('show', function (e) {
var angle = 0,
position = point.options.get('projection').toGlobalPixels(point.geometry.getCoordinates(), myMap.getZoom());
interval = setInterval(function () {
point.hint.move([
position[0] + 50 + Math.cos(angle) * 50,
position[1] + 50 + Math.sin(angle) * 50
]);
angle += Math.PI / 90;
if (angle >= 2 * Math.PI) {
angle = 0;
}
}, 50);
})
.add('hide', function () {
if (interval) {
clearInterval(interval);
}
});
show
{Hint} show(pixelPosition)
Показывает хинт.
Returns экземпляр хинта.
Параметры:
Параметр |
Значение по умолчанию |
Описание |
|
— |
Тип: Number[] Позиция хинта в глобальных пиксельных координатах. |
* Обязательный параметр/опция.
Пример:
// Отключает открытие хинта при наведении мыши и открывает его при клике,
// вместо балуна.
myMap.geoObjects.options.set({
showHintOnHover: false,
openBalloonOnClick: false
});
myMap.geoObjects.events.add('click', function (e) {
var geoObject = e.get('target'),
position = e.get('globalPixelPosition');
geoObject.hint.show(position);
});
Обязательный параметр/опция.