geoObject.Hint
Менеджер хинта геообъекта. Позволяет управлять хинтом геообъекта, открывать и скрывать его. Использует внутри себя менеджер хинтов карты map.Hint. Геообъекты содержат экземпляр этого класса, доступный как myGeoObject.hint. Не создавайте экземпляры этого класса без необходимости.
См.: GeoObject.hint
Конструктор | Поля | События | Методы
Конструктор
geoObject.Hint(geoObject)
Параметры:
* Обязательный параметр/опция.
Поля
Имя | Тип | Описание |
---|---|---|
events | event.Manager | Менеджер событий хинта геообъекта. |
Имя | Тип | Описание |
---|---|---|
events | event.Manager | Менеджер событий хинта геообъекта. |
События
Методы
Имя | Возвращает | Описание |
---|---|---|
hide([callback[, urgently]]) | Скрывает хинт. | |
isShown() | Boolean | Проверяет состояние хинта на карте. Проксирует вызов Hint.isShown(). |
move(pixelPosition) | Передвигает хинт, если он в данный момент показан. | |
show(pixelPosition) | Показывает хинт. |
Имя | Возвращает | Описание |
---|---|---|
hide([callback[, urgently]]) | Скрывает хинт. | |
isShown() | Boolean | Проверяет состояние хинта на карте. Проксирует вызов Hint.isShown(). |
move(pixelPosition) | Передвигает хинт, если он в данный момент показан. | |
show(pixelPosition) | Показывает хинт. |
Описание полей
events
{event.Manager} events
Менеджер событий хинта геообъекта.
Описание событий
Описание методов
hide
Скрывает хинт.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
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)
Передвигает хинт, если он в данный момент показан.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
pixelPosition * | — | Тип: Number[] Новая позиция хинта в глобальных пиксельных координатах. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
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 экземпляр хинта.
Параметры:
Параметр | Значение по умолчанию | Описание |
---|---|---|
pixelPosition * | — | Тип: Number[] Позиция хинта в глобальных пиксельных координатах. |
Параметр | Значение по умолчанию | Описание |
---|---|---|
pixelPosition * | — | Тип: 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);
});