【发布时间】:2015-09-23 01:11:00
【问题描述】:
我正在尝试在一些短语上构建动画,这些短语将显示在网站主页上,随机位置并带有淡入淡出和翻译效果。
我会使用 ng-repeat 属性中的 ng-style 属性并设置调用 HomeController 中定义的 JavaScript 函数的 ng-style 值来实现这一点。 p>
使用此方法会导致 Angular 抛出异常:$rootScope:infdig 错误 10 $digest() 迭代已达到。中止!在最后 5 次迭代中触发的观察者
我阅读了很多关于此的内容,但没有解决方案可以解决我的问题。 谁能帮帮我?
这里是 index.html 的一部分:
<div class="phrasesContainer" animate-phrases="">
<h3 class="flying-text" ng-repeat="phrase in Phrases" ng-style="getTopLeftPosition()">{{phrase}}</h3>
</div>
这里是控制器功能:
$scope.getTopLeftPosition = function() {
var top = randomBetween(10, 90);
var left = getRandomTwoRange(5, 30, 70, 80);
return {
top: top + '%',
left: left + '%'
};
}
【问题讨论】:
-
getTopLeftPosition()在每个摘要上都被调用,因为它永远不会稳定。它总是返回不同的值。为什么不将样式相关的代码移到你的指令中?
标签: javascript jquery angularjs ng-style angularjs-rootscope