Hint

Расширяет IDomEventEmitter.

Хинт - всплывающая подсказка, которая может отображать любое HTML-содержимое. Хинты возвращаются из методов show менеджеров хинта (карты, геообъектов, слоёв активных областей и т.д.). Не создавайте их самостоятельно, если в этом нет необходимости.

Конструктор | Поля | События | Методы

Конструктор

Hint(map[, data[, options]])

Параметры:

Параметр Значение по умолчанию Описание
map *

Тип: Map

Ссылка на объект карты.

data

Тип: Object

Данные.

options

Тип: Object

Опции.

options.contentLayout

Тип: Function|String

Макет для содержимого хинта. (Тип: конструктор объекта с интерфейсом ILayout).

options.fitPane true

Тип: Boolean

Флаг, заставляющий хинт сдвигать свою позицию, чтобы не выходить за границы контейнера.

options.hideTimeout 700

Тип: Number

Задержка закрытия (в мс).

options.holdByMouse true

Тип: Boolean

Флаг, оменяющий закрытие хинта, находящегося под курсором.

options.interactivityModel

Тип: String

Ключ модели интерактивности. Доступные ключи и их значения перечислены в описании interactivityModel.storage.

options.layout

Тип: Function|String

Внешний макет хинта. (Тип: конструктор объекта с интерфейсом ILayout).

options.overlay overlay.Label

Тип: IOverlay

Класс оверлея.

options.pane outers

Тип: IPane|String

Контейнер оверлея хинта. "outers" - вне карты, "floats" - в пределах карты.

options.showTimeout 150

Тип: Number

Задержка открытия (в мс).

options.zIndex

Тип: String

z-index подсказки.

* Обязательный параметр/опция.

Пример:

// Создаем независимый экземпляр хинта и показываем его в центре карты.
(new ymaps.Hint(myMap, { content: 'Hello' }, {
    projection: ymaps.projection.wgs84Mercator,
    layout: ymaps.templateLayoutFactory.createClass('$[content]')
})).show(myMap.getCenter());

Поля

Имя Тип Описание
events IEventManager

Менеджер событий.

Унаследовано от IDomEventEmitter.

События

Имя Описание
beforedestroy

Событие, предшествующее уничтожению хинта. Экземпляр класса Event.

click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

destroy

Уничтожение хинта. Экземпляр класса Event.

hide

Скрытие хинта. Экземпляр класса Event.

mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

multitouchend

Окончание мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchmove

Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

multitouchstart

Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях.

Унаследовано от IDomEventEmitter.

show

Отображение хинта на карте. Экземпляр класса Event.

wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager.

Унаследовано от IDomEventEmitter.

Методы

Имя Возвращает Описание
destroy([callback, urgently)

Hint

Уничтожает хинт. Предварительно генерирует событие beforedestroy, при отмене которого уничтожения хинта не произойдет. После уничтожения хинта генерируется событие destroy.

getData()

Object

Returns данные хинта.

getOverlay()

IOverlay

Returns оверлей хинта.

getPosition()

Number[]

Returns позицию хинта.

hide(urgently)

Hint

Скрывает хинт.

isShown()

Boolean

Возвращает состояние хинта: открыт/скрыт.

setData(data)

Hint

Устанавливает данные хинта.

setPosition(position)

Hint

Устанавливает координаты хинта в проекции, заданной в опциях.

show([position])

Hint

Отображает хинт на карте в точке с заданными координатами. Если хинт уже отображен, перемещает его в указанную точку.

Описание событий

beforedestroy

Событие, предшествующее уничтожению хинта. Экземпляр класса Event.

destroy

Уничтожение хинта. Экземпляр класса Event.

hide

Скрытие хинта. Экземпляр класса Event.

show

Отображение хинта на карте. Экземпляр класса Event.

Описание методов

destroy

{Hint} destroy([callback, urgently)

Уничтожает хинт. Предварительно генерирует событие beforedestroy, при отмене которого уничтожения хинта не произойдет. После уничтожения хинта генерируется событие destroy.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
callback

Тип: Function

Функция, которая будет вызвана после уничтожения балуна. Если событие beforedestroy было отменено, в функцию первым параметром будет передано сообщение о том, что хинт не был уничтожен.

urgently *

Тип: Boolean

Скрыть хинт сразу, без временной задержки и без учета положения курсора.

* Обязательный параметр/опция.

getData

{Object} getData()

Returns данные хинта.

getOverlay

{IOverlay} getOverlay()

Returns оверлей хинта.

getPosition

{Number[]} getPosition()

Returns позицию хинта.

hide

{Hint} hide(urgently)

Скрывает хинт.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
urgently *

Тип: Boolean

Скрыть хинт сразу, без временной задержки и без учета положения курсора.

* Обязательный параметр/опция.

isShown

{Boolean} isShown()

Возвращает состояние хинта: открыт/скрыт.

Returns true, если хинт открыт, false - в обратном случае.

Пример:

// Открываем хинт (по таймауту в 1 сек.):
var hint = myMap.hint.show(myMap.getCenter(), { content: 'loading' }, { showTimeout: 1000 });

// Выполняем AJAX-запрос:
$.getJSON('hint-data.json')
    .success(function (data) {
        // Обновляем данные если хинт открыт, иначе вешаемся на событие открытия:
        if (hint.isShown()) {
            hint.setData(data);
        } else {
            myMap.hint.events.add('show', function () {
                hint.setData(data);
            });
        }
    });

setData

{Hint} setData(data)

Устанавливает данные хинта.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
data *

Тип: Object

Данные.

* Обязательный параметр/опция.

setPosition

{Hint} setPosition(position)

Устанавливает координаты хинта в проекции, заданной в опциях.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
position *

Тип: Number[]

Новая позиция.

* Обязательный параметр/опция.

show

{Hint} show([position])

Отображает хинт на карте в точке с заданными координатами. Если хинт уже отображен, перемещает его в указанную точку.

Returns ссылку на себя.

Параметры:

Параметр Значение по умолчанию Описание
position

Тип: Number[]

Координаты хинта.

Пример:

// Показывает хинт на карте, а затем скрывает и вновь показывает его с интервалом в 1 сек.
var hint = myMap.hint.show(myMap.getCenter(), 'Test');
setInterval(function () {
    hint.isShown() ? hint.hide() : hint.show(myMap.getCenter());
}, 1000);