Делегирует управление элементом scrollViews (созданным директивами ionContent и ionScroll ).

Вызываемые напрямую методы сервиса $ionicScrollDelegate будут управлять всеми видами прокрутки. Используйте метод $getByHandle для управления определенными видами прокрутки (scrollViews).

Применение

<body ng-controller="MainCtrl">
  <ion-content>
    <button ng-click="scrollTop()">Scroll to Top!</button>
  </ion-content>
</body>
function MainCtrl($scope, $ionicScrollDelegate) {
  $scope.scrollTop = function() {
    $ionicScrollDelegate.scrollTop();
  };
}

Пример расширенного применения, когда имеются две зоны прокрутки и для более точного управления используется delegate-handle

<body ng-controller="MainCtrl">
  <ion-content delegate-handle="mainScroll">
    <button ng-click="scrollMainToTop()">
      Scroll content to top!
    </button>
    <ion-scroll delegate-handle="small" style="height: 100px;">
      <button ng-click="scrollSmallToTop()">
        Scroll small area to top!
      </button>
    </ion-scroll>
  </ion-content>
</body>
function MainCtrl($scope, $ionicScrollDelegate) {
  $scope.scrollMainToTop = function() {
    $ionicScrollDelegate.$getByHandle('mainScroll').scrollTop();
  };
  $scope.scrollSmallToTop = function() {
    $ionicScrollDelegate.$getByHandle('small').scrollTop();
  };
}

Методы

resize()

Сообщает scrollView о перерасчете размера своего контейнера.

scrollTop([shouldAnimate])

Параметр

Тип

Описание

shouldAnimate

(необязательный)

(boolean)

Определяет, должна ли прокрутка сопровождаться анимацией.

scrollBottom([shouldAnimate])

Параметр

Тип

Описание

shouldAnimate

(необязательный)

(boolean)

Определяет, должна ли прокрутка сопровождаться анимацией.

scrollTo(left, top, [shouldAnimate])

Параметр

Тип

Описание

left

число (number)

Значение x (x-value), до которого должна осуществляться прокрутка.

top

число (number)

Значение y (y-value), до которого должна осуществляться прокрутка.

shouldAnimate

(необязательный)

(boolean)

Определяет, должна ли прокрутка сопровождаться анимацией.

scrollBy(left, top, [shouldAnimate])

Параметр

Тип

Описание

left

число (number)

Параметр x-offset, определяющий позиции прокрутки.

top

число (number)

Параметр y-offset, определяющий позиции прокрутки.

shouldAnimate

(необязательный)

(boolean)

Определяет, должна ли прокрутка сопровождаться анимацией.

zoomTo(level, [animate], [originLeft], [originTop])

Параметр

Тип

Описание

level

число (number)

Уровень, ограничивающий величину масштабирования.

animate

(необязательный)

(boolean)

Определяет, должно ли масштабирование сопровождаться анимацией.

originLeft

(необязательный)

число (number)

Детализация (приближение) изображения в процессе масштабирования при заданной левой координате.

originTop

(необязательный)

число (number)

Детализация (приближение) изображения в процессе масштабирования при заданной верхней координате.

zoomBy(factor, [animate], [originLeft], [originTop])

Параметр

Тип

Описание

factor

число (number)

Коэффициент увеличения изображения.

animate

(необязательный)

(boolean)

Определяет, должно ли масштабирование сопровождаться анимацией.

originLeft

(необязательный)

число (number)

Детализация (приближение) изображения в процессе масштабирования при заданной левой координате.

originTop

(необязательный)

число (number)

Детализация (приближение) изображения в процессе масштабирования при заданной верхней координате.

getScrollPosition()

  • Возвращает:
    object  Позиция прокрутки этого вида, имеющая следующие свойства:
  • {number} left Расстояние слева, на которое пользователь прокрутил контент (начинается от 0).
  • {number} top  Расстояние от верхней границы, на которое пользователь прокрутил контент (начинается от 0).

anchorScroll([shouldAnimate])

Дает команду ScrollView прокрутить элемент с ID, который
соответствует window.location.hash.

Если подходящий элемент не найден, будет выполнена прокрутка до самой верхней позиции.

Параметр

Тип

Описание

shouldAnimate

(необязательный)

логическое значение (boolean)

Определяет, должна ли прокрутка сопровождаться анимацией.

freezeScroll([shouldFreeze])

Не позволяет этому виду прокручиваться по параметрам x или y.

Параметр

Тип

Описание

shouldFreeze

(необязательный)

логическое значение (boolean)

Определяет, позволить этому виду прокручиваться или нет.

  • Возвращает:
    boolean  Определяет, запрещен этому Scroll View режим прокрутки или нет.

freezeAllScrolls([shouldFreeze])

Не разрешает любому из Scroll View приложения прокручиваться по параметрам x или y.

Параметр

Тип

Описание

shouldFreeze

(необязательный)

логическое значение (boolean)

Определяет, следует ли предотвратить возможность прокрутки для всех элементов прокрутки в приложении или нет.

getScrollView()

  • Возвращает:
    object  Данный ScrollView ассоциируется с этим делегатом.

$getByHandle(handle)

Параметр

Тип

Описание

handle

строка (string)

 
  • Возвращает:
    delegateInstance Экземпляр делегата, который управляет только
    видами прокрутки ScrollViews с помощью  delegate-handle  в соответствие с данным обработчиком.

Пример: $ionicScrollDelegate.$getByHandle('my-handle').scrollTop();