layout.templateBased.Base

Расширяет ILayout .

Базовый класс макета на основе шаблонов. Этот класс используется фабрикой макетов как базовый для создания пользовательских макетов.

См.: templateLayoutFactory

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

Конструктор

layout.templateBased.Base(data)

Параметры:

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

Тип: Object

Набор разнородных данных, на основе которых строится макет.

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

Поля

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

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

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

События

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

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

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

contextmenu

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

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

dblclick

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

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

emptinesschange

Изменение признака пустоты макета. Экземпляр класса Event .

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

mousedown

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

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

mouseenter

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

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

mouseleave

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

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

mousemove

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

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

mouseup

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

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

multitouchend

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

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

multitouchmove
Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:
  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

multitouchstart
Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:
  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

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

parentelementchange

Изменение родительского элемента. Экземпляр класса Event .

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

shapechange

Изменение фигуры области охватывающей макет. Экземпляр класса Event .

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

wheel

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

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

Методы

Имя Возвращает Описание
build ()

Строит экземпляр макета на основе шаблона и добавляет его в родительский HTML-элемент.

clear ()

Удаляет содержимое макета из DOM.

destroy ()

Деструктор. Вызывается при завершении работы с макетом.

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

getData ()

Object

Возвращает объект данных макета.

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

getParentElement ()

HTMLElement

Возвращает родительский HTML-элемент.

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

getShape ()

IShape |null

Возвращает фигуру, описывающую форму области, охватывающей макет, либо null, если нет возможности рассчитать данную фигуру. По умолчанию пытается построить фигуру через опцию shape - this.getData().options.get('shape'). В опции можно задать как инстанцию класса, реализующего интерфейс IShape, так и JSON-описание пиксельной геометрии фигуры. Координаты геометрии фигуры должны отсчитываться от точки привязки родительского элемента макета.

isEmpty ()

Boolean

Возвращает true, если макет пуст, т.е. не имеет содержимого. Данный признак используется для сокрытия пустых объектов, таких как хинт, балун и другие.

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

onSublayoutSizeChange (sublayoutInfo, nodeSizeByContent)

Автоматически вызывается при изменении размеров вложенного макета, добавленного с параметром 'observeSize'. Используется для переопределения в конкретных классах макетов для реакции на изменение размеров содержимого.

rebuild ()

Перестраивает макет.

setData (data)

Задает данные макета.

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

setParentElement (parent)

Добавляет макет в DOM-дерево.

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

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

build

{} build()

Строит экземпляр макета на основе шаблона и добавляет его в родительский HTML-элемент.

clear

{} clear()

Удаляет содержимое макета из DOM.

getShape

{IShape|null} getShape()

Возвращает фигуру, описывающую форму области, охватывающей макет, либо null, если нет возможности рассчитать данную фигуру. По умолчанию пытается построить фигуру через опцию shape - this.getData().options.get('shape'). В опции можно задать как инстанцию класса, реализующего интерфейс IShape, так и JSON-описание пиксельной геометрии фигуры. Координаты геометрии фигуры должны отсчитываться от точки привязки родительского элемента макета.

Пример:

// Создадим метку и зададим ей круглую интерактивную область.
var MyLayoutClass = ymaps.templateLayoutFactory.createClass('<div class="imageIcon">{{name}}</div>'),
    myPlacemark = new ymaps.Placemark([22, 34], {name: 'Кафе Маяк'}, {
        iconLayout: MyLayoutClass,
       iconShape: {type: 'Circle', coordinates: [0, 0], radius: 20}
   });

onSublayoutSizeChange

{} onSublayoutSizeChange(sublayoutInfo, nodeSizeByContent)

Автоматически вызывается при изменении размеров вложенного макета, добавленного с параметром 'observeSize'. Используется для переопределения в конкретных классах макетов для реакции на изменение размеров содержимого.

Параметры:

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

Тип: Object

Информация о вложенном макете.

nodeSizeByContent *

Тип: Object

Новые размеры элемента с учётом его содержимого. Доступные поля: 'width', 'height', 'scrollX', 'scrollY'.

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

rebuild

{} rebuild()

Перестраивает макет.