ionic中的关于下拉刷新

来源:互联网 发布:滴滴快车软件下载 编辑:程序博客网 时间:2024/06/13 01:08

ion-refresher隶属于ionContentionScroll,

允许你添加下拉刷新滚动视图。

把它作为ionContentionScroll元素的第一个子元素。

当刷新完成时,从你的控制器中广播($broadcast)出 'scroll.refreshComplete'事件。

ion-scroll创建一个包含所有内容的可滚动容器。

ion-scroll(包涵在ionContent中)
授权: $ionicScrollDelegate

创建一个包含所有内容的可滚动容器。

ion-infinite-scroll
隶属于ionContentionScroll

当用户到达页脚或页脚附近时,ionInfiniteScroll指令允许你调用一个函数 。

当用户滚动的距离超出底部的内容时,就会触发你指定的on-infinite

当没有更多数据加载时,就可以用一个简单的方法阻止无限滚动,那就是angular的ng-if 指令:

$ionicScrollDelegate

授权控制滚动视图(通过ionContentionScroll指令创建)。

该方法直接被$ionicScrollDelegate服务触发,来控制所有滚动视图。用 $getByHandle方法控制特定的滚动视图。

方法

resize()

告诉滚动视图重新计算它的容器大小。

scrollTop([shouldAnimate])

参数类型详情shouldAnimate
(可选)
布尔值

是否应用滚动动画。

scrollBottom([shouldAnimate])

参数类型详情shouldAnimate
(可选)
布尔值

是否应用滚动动画。

scrollTo(left, top, [shouldAnimate])

参数类型详情left数值

水平滚动的值。

top数值

垂直滚动的值。

shouldAnimate
(可选)
布尔值

是否应用滚动动画。

scrollBy(left, top, [shouldAnimate])

参数类型详情left数值

水平滚动的偏移量。

top数值

垂直滚动的偏移量。

shouldAnimate
(可选)
布尔值

是否应用滚动动画。

getScrollPosition()

  • 返回: 对象 滚动到该视图的位置,具有一下属性:
    • {数值} left 从左侧到用户已滚动的距离(开始为 0)。
    • {数值} top 从顶部到用户已滚动的距离 (开始为 0)。

anchorScroll([shouldAnimate])

告诉滚动视图用一个带有id的滚动元素匹配window.location.hash。

如果没有匹配到元素,它会滚动到顶部。

参数类型详情shouldAnimate
(可选)
布尔值

是否应用滚动动画。

getScrollView()

  • 返回: 对象 匹配具有授权的滚动视图。

rememberScrollPosition(id)

当滚动视图被销毁时(用户离开页面),页面最后的滚动位置会被指定的索引保存。

注意:根据一个ion-nav-view将页面和一个视图关联,rememberScrollPosition自动保存它们的滚动。

相关方法:scrollToRememberedPosition, forgetScrollPosition (低)。

在下面的例子中,ion-scroll元素的滚动位置会被保留, 甚至当用户切换开关时。

<ion-toggle ng-model="shouldShowScrollView"></ion-toggle><ion-scroll delegate-handle="myScroll" ng-if="shouldShowScrollView">  <div ng-controller="ScrollCtrl">    <ion-list>      <ion-item ng-repeat="i in items">{{i}}</ion-item>    </ion-list>  </div></ion-scroll>
function ScrollCtrl($scope, $ionicScrollDelegate) {  var delegate = $ionicScrollDelegate.$getByHandle('myScroll');  // 这里可以放任何唯一的ID。重点是:要在每次重新创建控制器时  // 我们要加载当前记住的滚动值。  delegate.rememberScrollPosition('my-scroll-id');  delegate.scrollToRememberedPosition();  $scope.items = [];  for (var i=0; i<100; i++) {    $scope.items.push(i);  }}
参数类型详情id字符串

保留已滚动位置的滚动视图的id。

forgetScrollPosition()

停止保存这个滚动视图的滚动位置。

scrollToRememberedPosition([shouldAnimate])

如果这个滚动视图有个和它的滚动位置关联的id(通过调用rememberScrollPosition方法),然后记住那个位置,加载那个位置然后滚动到那个位置。

参数类型详情shouldAnimate
(可选)
布尔值

是否应用滚动动画。

$getByHandle(handle)

参数类型详情handle字符串 
  • 返回: delegateInstance一个代表性实例就是只控制带有delegate-handle的滚动视图来匹配给定的句柄。
例如: $ionicScrollDelegate.$getByHandle('my-handle').scrollTop();


0 0