【问题标题】:$ionicScrollDelegate freezes the scroll$ionicScrollDelegate 冻结滚动
【发布时间】:2016-04-07 07:09:43
【问题描述】:

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

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

代码

聊天.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);

});


});

【问题讨论】:

    标签: ionic-framework


    【解决方案1】:

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

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

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

    试试吧..希望对你有帮助。

    更新(解决方案):

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

    请在 'ionic-angular.js' 上修改/编辑它

    希望它可以帮助其他人:)

    【讨论】:

    • 非常感谢您的回答,但我们究竟需要在哪里设置“jsScrolling:false”
    • $ionicScrollDelegate.$getByHandle('mainScroll').scrollBottom();删除 true 对我有用。 :)
    • @SukamalDas,你能接受答案吗? :)
    猜你喜欢
    • 1970-01-01
    • 2012-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多