Здравствуйте.
Пишу одностраничное приложение, где по клику по ссылке с помощью ajax получаю данные с сервера. Полученные данные выводятся с помощью ng-repeat. Проблема в том, что я использую скрипты для подсветки кода в html и для того, чтобы эта подсветка появилась, необходимо вызвать функцию, которая и обновляет эти стили.
Например, у меня есть
<pre class="java">code</pre>
После полной загрузки страницы вызывается $("pre.java").snippet("java"), но если попробовать вызвать ее после получения ответа по ajax, то она вызывается именно после получения, а не отрисовки на странице.
Моя директива:
app.directive("file", function() {
return {
restrict : "E",
scope : true,
controller : function($scope, $element) {
$scope.fileName = $scope.file.fileName;
$scope.fileContent = $scope.file.content;
},
link : function(scope, el, attr) {
scope.fileName = scope.fileName;
scope.fileContent = scope.fileContent;
},
template :
"<h3 class='title'>name: {{fileName}}</h3><pre class=\"java\">content: {{fileContent}}</pre>"
}
});
Пробовал вызывать по условию $last. Функция отрабатывает, добавляет свои классы в блоку
<pre>
, но после этого не происходит замена "fileContent". Возможно кто-то сталкивался с подобной задачей?