$ ionicScrollDelegate冻结滚动

时间:2016-04-07 07:09:44

标签: ionic-framework

在我的控制器中,我使用$ firebaseArray和$ ionicScrollDelegate在聊天中显示消息。当我的$ firebaseArray加载时,我使用滚动委托滚动到底部,它工作正常,没有问题。

但是当添加一个新的孩子时,我再次使用滚动委托滚动到底部,向下滚动没有任何问题,但它冻结了滚动,即我无法滚动回到顶部

代码

chat.html

<ion-content delegate-handle="mainScroll">
  //chat list

</ion-content>

聊天控制器

app.controller('chatCtrl',function($scope,$firebaseArray,$ionicScrollDelegate){

var chatRef = new Firebase("my ref");


$scope.messages = $firebaseArray(chatRef);

 $scope.messages.$loaded().then(function(){
 $ionicScrollDelegate.$getByHandle('mainScroll').scrollBottom(true);
});

 chatRef.on('child_added', function(childSnapshot, prevChildKey) {

$ionicScrollDelegate.$getByHandle('mainScroll').scrollBottom(true);

});


});

1 个答案:

答案 0 :(得分:1)

我相信你正在使用Android手机进行测试吗?如果安卓我很确定通过使用动画滚动到底部有一个错误。您是否尝试通过删除函数上的“true”值来删除动画?例如:

$ionicScrollDelegate.$getByHandle('mainScroll').scrollBottom(true);

$ionicScrollDelegate.$getByHandle('mainScroll').scrollBottom();

试试吧..希望它可以帮助你。

更新(解决方案):

好的,我找到了解决方案..似乎我们需要设置'jsScrolling:true'而不是默认为'jsScrolling:false'用于android。

请在'ionic-angular.js'

上修改/编辑

希望它能帮助别人:)