Sukamal Das
Sukamal Das

Reputation: 11

$ionicScrollDelegate freezes the scroll

In my controller i am using $firebaseArray and $ionicScrollDelegate to show messages in a chat. when my $firebaseArray is loaded, i am using the scroll delegate to scroll to the bottom and it works fine, no issues there.

But when a new child is added, i am again using scroll delegate to scroll to bottom, that scrolls down without any issues but it freezes the scroll, i.e i am not able to scroll back to the top

code

chat.html

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

</ion-content>

chat controller

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);

});


});

Upvotes: 1

Views: 903

Answers (1)

Safrul
Safrul

Reputation: 77

I believe you are using android phone to test right? If android I'm pretty sure there have a bug by using animation to scroll to bottom. Have you try to remove the animation by delete 'true' value on the function? Ex:

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

to

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

Try It.. hope it helps you.

UPDATE (SOLUTION):

Okay I found the solution.. It seem we need to set 'jsScrolling: true' instead of by default is 'jsScrolling: false' for android.

Please modified/edit this on 'ionic-angular.js'

Hope it helps others :)

Upvotes: 1

Related Questions