2017-04-18 9 views
0

チャットアプリの下にスクロールするためにアングルグルーを使用しています。しかし、送信側のサイトでのみ動作します。レシーバーウィンドウイングはスクロールを底に出さなかった。チャットアプリで角スクロールアタッチメントが動作しない

<div id="chat" scroll-glue force-glue> 
     <ul id="mychat"> 
     </ul> 
</div> 

チャット機能内のAngularjsコード。

Sovar myEl = angular.element(document.querySelector('#mychat')); 
myEl.append('<li><strong>' + data.user + ':</strong> ' +data.msg+'</li>'); 

更新:これを使用して動作します。

var myEl = angular.element(document.querySelector('#mychat')); 
    myEl.append($compile('<li><strong>' + data.user + ':</strong> ' +data.msg+'</li>')($scope)); 
    $scope.$apply(); 

答えて

0

一度文字列に追加すると、htmlをレンダリングするために要素をコンパイルする必要があります。

$scope.data = {"user":"user1", "msg":"this is msg"} 
var target = angular.element(document.querySelector('#mychat')); 
target.append('<li><strong>'+$scope.data.user+':</strong>'+$scope.data.msg+'</li>'); 
$compile(target)($scope); 

デモ

angular.module("app",[]) 
 
.controller("ctrl",function($scope,$compile){ 
 
$scope.data = {"user":"user1", "msg":"this is msg"} 
 
var target = angular.element(document.querySelector('#mychat')); 
 
target.append('<li><strong>'+$scope.data.user+':</strong>'+$scope.data.msg+'</li>'); 
 

 
$compile(target)($scope); 
 

 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
    <div id="chat" scroll-glue force-glue> 
 
     <ul id="mychat"> 
 
     </ul> 
 
</div> 
 
</div>

+0

私はこれを使用し、それが動作します。しかし、同じ方法ではありません。私はいくつかを編集する。アップデートを見てください。 –

+0

追加した後にコンパイルすると、再度適用機能を使用する必要はありません –

関連する問題