Улучшить эту документацию Просмотреть исходный код $anchorScroll
- $anchorScrollProvider
- Сервис в модуле ng
При вызове, он прокручивает страницу к элементу, связанному с указанным hash или (если опущено) к текущему значению $location.hash(), в соответствии с правилами, указанными в спецификации HTML5.
Он также отслеживает $location.hash() и автоматически прокручивается к любому якорю при его изменении. Это можно отключить, вызвав $anchorScrollProvider.disableAutoScrolling().
Кроме того, вы можете использовать свойство yOffset для указания вертикального смещения прокрутки (фиксированного или динамического).
Зависимости
Использование
$anchorScroll([hash]);
Аргументы
| Параметр | Тип | Подробности |
|---|---|---|
| hash (необязательно) | string | Хеш, определяющий элемент, к которому необходимо прокрутить. Если опущено, используется значение $location.hash(). |
Свойства
-
yOffset
numberfunction()jqLiteЕсли задано, определяет вертикальное смещение прокрутки. Это часто полезно, когда на странице есть элементы с фиксированным позиционированием вверху, такие как навигационные панели, заголовки и т. д.
yOffsetможет быть задан различными способами:-
число: Фиксированное число пикселей, используемых в качестве смещения.
-
функция: Функция-получатель, вызываемая каждый раз, когда
$anchorScroll()выполняется. Она должна возвращать число, представляющее смещение (в пикселях).
-
jqLite: Элемент jqLite/jQuery, используемый для задания смещения. Расстояние от верха страницы до нижней части элемента будет использоваться как смещение.
Примечание: Элемент будет учитываться только до тех пор, пока егоpositionустановлено вfixed. Этот вариант полезен при работе с адаптивными навигационными панелями/заголовками, которые изменяют свой размер и/или позиционирование в соответствии с размером области просмотра.
Для правильной работыyOffsetпрокрутка должна происходить на корневом элементе документа, а не на каком-либо дочернем элементе. -
число: Фиксированное число пикселей, используемых в качестве смещения.
© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.5.11/docs/api/ng/service/$anchorScroll