我正在开发使用angularJs的项目,我使用Cufon来更改字体。 现在,当加载控制器时,cufon会替换角度表达式,之后会运行angularJs。 那是我的问题。 我希望Cufon在Angular表达式Binding之后运行。 任何人都可以帮助我吗?
在我的HTML页面中:
<span class="input-label" id="lb" >{{s}}</span>
和js:
$scope.s = "hiiii";
Cufon.replace('#lb', {onAfterReplace: Bifon.convert, fontFamily: 'B Titr'});
问题是在角度绑定发生之前,Cufon会改变表达值。
任何人都可以帮助我?
答案 0 :(得分:2)
您可能希望使用指令并侦听要准备的元素:
HTML:
<div ng-controller="MyController">
<div class="thing" ng-bind="content" cufon-replace-directive>
content {{content}}
</div>
</div>
JS:
function MyController($scope) {
$scope.content = [
'param1', 'param2'
];
}
angular.module('myApp', [])
.directive('cufonReplaceDirective', function() {
return function(scope, element, attrs) {
element.ready(function(){
element.html(element.html().replace(/[0-9]/g,"!!!"))
})
};
});
更新了cufon:
function MyController($scope) {
$scope.content = [
'param1', 'param2'
];
}
angular.module('myApp', [])
.directive('cufonReplaceDirective', function() {
return function(scope, element, attrs) {
scope.content = ["somecontent123"]
element.ready(function(){
Cufon.replace('.thing', {onAfterReplace: Bifon.convert, fontFamily: 'B Titr'});
})
};
});