Класс: Phaser.DOM
Конструктор
new DOM()
Класс-утилита для работы с DOM.
Предоставляет полезные функции для работы с окном и элементами, а также буфер для кроссбраузерной совместимости.
Часть кода первоначально взята из verge.
Некоторые части были вдохновлены исследованиями Райана Ван Эттена, выпущенными под лицензией MIT в 2013 году.
- Исходный код: utils/DOM.js (Строка 18)
Общественные свойства
- Исходный код: utils/DOM.js (Строка 274)
- Исходный код: utils/DOM.js (Строка 260)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: utils/DOM.js (Строка 289)
- Внутреннее:
- Этот член является внутренним (защищённым) и может быть изменён или удалён в будущем.
- Исходный код: utils/DOM.js (Строка 301)
- Исходный код: utils/DOM.js (Строка 239)
<статическое, только для чтения> documentBounds : Phaser.Rectangle
Размер области просмотра документа/макета.
В IE этот размер отображается неправильно.
Свойства изменяются динамически.
Свойства:
| Имя | Тип | Описание |
|---|---|---|
width | число | Ширина документа в пикселях. |
height | число | Высота документа в пикселях. |
<статическое, только для чтения> layoutBounds : Phaser.Rectangle
Пределы области просмотра макета, как обсуждалось в
Рассказ о двух областях просмотра — часть две;
но учитывая ограничения, заданные соответствующим тегом viewport мета-тэга.
Возвращаемые пределы не гарантируют полное соответствие CSS-медиа запросам (см.
Какой размер моей области просмотра?).
Это не отражает визуальные границы: в частности, ось, не являющаяся главной,
обычно будет значительно больше высоты экрана на мобильных устройствах при работе с
ограниченной областью просмотра.
Свойства изменяются динамически.
Свойства:
| Имя | Тип | Описание |
|---|---|---|
width | число | Ширина области просмотра в пикселях. |
height | число | Высота области просмотра в пикселях. |
<внутреннее, статическое, только для чтения> scrollX : число
Кроссбраузерное свойство window.scrollX.
<внутреннее, статическое, только для чтения> scrollY : число
Кроссбраузерное свойство window.scrollY.
<статическое, только для чтения> visualBounds : Phaser.Rectangle
Границы области просмотра Visual, как обсуждалось в
Рассказ о двух областях просмотра — часть одна
с одним отличием: размер области просмотра исключает полосы прокрутки, как в некоторых браузерах для десктопов.
Поддерживаемые мобильные:
iOS/Safari, Android 4, IE10, Firefox OS (возможно, не Firefox Android), Opera Mobile 16
Свойства изменяются динамически.
Свойства:
| Имя | Тип | Описание |
|---|---|---|
x | число | Смещение прокрутки, левое смещение - например, "scrollX" |
y | число | Смещение прокрутки, верхнее смещение - например, "scrollY" |
width | число | Ширина области просмотра в пикселях. |
height | число | Высота области просмотра в пикселях. |
Общественные методы
- Source code: utils/DOM.js (Line 100)
- Source code: utils/DOM.js (Line 48)
- Объект типа точка с свойствами offsetX и Y.
- Source code: utils/DOM.js (Line 20)
- API ориентации экрана или ее вариация - будущий трек. Большинство настольных и мобильных браузеров.
- Проверка соотношения размеров экрана - подходит для настольных компьютеров, если фаллбек равен 'screen'.
- Проверка соотношения размеров области просмотра - подходит для мобильных устройств, если фаллбек равен 'viewport'.
- window.orientation - работает в iOS и, вероятно, в большинстве Android; не рекомендуется.
- Запрос к медиа.
- Проверка соотношения размеров области просмотра (вероятно, только IE9 и устаревшие мобильные устройства доходят сюда..)
- https://w3c.github.io/screen-orientation/ (конфликтует с mozOrientation/msOrientation)
- https://developer.mozilla.org/en-US/docs/Web/API/Screen.orientation (mozOrientation)
- http://msdn.microsoft.com/en-us/library/ie/dn342934(v=vs.85).aspx
- https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Testing_media_queries
- http://stackoverflow.com/questions/4917664/detect-viewport-orientation
- http://www.matthewgifford.com/blog/2011/12/22/a-misconception-about-window-orientation
- Внутренний:
- Этот член является внутренним (защищенным) и может быть изменен или удален в будущем.
- Source code: utils/DOM.js (Line 149)
- Source code: utils/DOM.js (Line 128)
<static> getAspectRatio(object) → {number}
Получить соотношение сторон визуального области просмотра (или соотношение сторон объекта или элемента)
Parameters
| Name | Type | Argument | Default | Description |
|---|---|---|---|---|
object | DOMElement | Object | <optional> | (visualViewport) | Объект, для которого необходимо определить соотношение сторон. Должен иметь общедоступные свойства или методы |
Returns
Соотношение сторон.
<static> getBounds(element, cushion) → {Object | boolean}
Переносимый метод element.getBoundingClientRect() с необязательным параметром отступа.
Возвращает обычный объект, содержащий свойства top/bottom/left/right/width/height, относительно верхнего левого угла текущего окна просмотра.
Его свойства соответствуют свойствам нативного прямоугольника.
Параметр отступа — это значение в пикселях (+/-), используемое для отступа элемента.
Это позволяет изменять измерения таким образом, чтобы можно было определить, находится ли элемент рядом с окном просмотра.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
element | DOMElement | Object | Элемент или стек (используется первый элемент) для получения границ. | |
cushion | number | <optional> | Значение +/- в пикселях, которое используется для корректировки. |
Returns
Обычный объект, содержащий свойства top/bottom/left/right/width/height или false, если указан неверный элемент.
<static> getOffset(element, point) → {Phaser.Point}
Получить [абсолютное] положение элемента относительно документа.
Значение может незначительно изменяться при прокрутке страницы из-за ошибок округления.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
element | DOMElement | Целевой элемент, для которого необходимо получить смещение. | |
point | Phaser.Point | <optional> | Точка, для которой необходимо получить значения x/y смещения. |
Returns
<internal, static> getScreenOrientation(primaryFallback)
Возвращает ориентацию экрана устройства.
Значения ориентации: 'portrait-primary', 'landscape-primary', 'portrait-secondary', 'landscape-secondary'.
Порядок разрешения:
См.
Parameters
| Name | Type | Argument | Default | Description |
|---|---|---|---|---|
primaryFallback | string | <optional> | (none) | Укажите 'screen', 'viewport' или 'window.orientation'. |
<static> inLayoutViewport(element, cushion) → {boolean}
Проверяет, находится ли заданный DOM-элемент в области просмотра макета.
Необязательный параметр отступа позволяет указать расстояние.
inLayoutViewport(element, 100) - это true если элемент находится в области просмотра или в 100 пикселях от нее.
inLayoutViewport(element, -100) - это true если элемент находится в области просмотра или хотя бы в 100 пикселях от нее.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
element | DOMElement | Object | DOM-элемент для проверки. Если элемент не указан, по умолчанию используется холст Phaser game. | |
cushion | number | <optional> | Отступ позволяет указать расстояние, в пределах которого элемент должен находиться в области просмотра. |
Returns
True, если элемент находится в области просмотра или в пределах cushion расстояния от нее.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.DOM.html