问题描述
用AngularJs做即时通讯,需要将p的滚动条固定到底部。现在尝试了下面的做法,没有反应。
//----p滚动条置底$scope.scrollWindow=function(){ var _el = document.getElementById(’chat_history’); _el.scrollTop = _el.scrollHeight;};//----使用方法$timeout(function(){ $scope.scrollWindow();},500);
问题解答
回答1:已经实践成功的答案。采用了 HTML5 的API DOMNodeInserted 来检测元素内容的变动。
$scope.scroll_go=function(){ var _childEl=jQuery('.chat-history'),_el=jQuery('#chat_history'); if(_childEl.height()>(_documentSize.height - 50)){_el.scrollTop(_childEl.height()); } //----检测元素内容变动 _childEl.bind(’DOMNodeInserted’,function(){_el.scrollTop(_childEl.height()); });};回答2:
$scope.scrollWindow=function(){ var _el = document.getElementById(’chat_history’); _el.scrollTop = _el.scrollHeight - _el.height;};