我每2秒调用js函数,在某些情况下,我想在视图上更新div。
<div id="ball_{{ballIndex}}">{{ball}}</div>
在ng控制器上
var myCounter = 0;
var interval = $interval(function () {
if (myCounter <= 35) {
myCounter ++;
DoSomething();
} else {
//
}
}, 1500);
function setCurrentBallEffect() {
$('#ball_' + myCounter).addClass('magictime puffIn');
}
function DoSomething() {
if (myCounter == 0) {
$scope.ballIndex = 1;
} else {
$scope.ballIndex = myCounter;
}
}
使用此代码,仅将迭代中的第一个div应用于magictime puffIn类。当我在视图侧对div id进行硬编码时,例如
<div id="ball_1">1</div>
<div id="ball_2">2</div>
..在每个div上应用css类工作。我做错了什么?更新:
尝试过
<div ng-attr-id="{{ 'ball_' + ballIndex }}"> </div>
但是问题仍然存在。
最佳答案
首先,您必须定义
var myCounter =0;
我不懂球
您必须这样定义它:
$scope.ball=0;
我这样改变看法
<div id="ball_{{ballIndex}}">{{ballIndex}}</div>
并且您的JavaScript更改如下:
var poolCounter = 0;
var myCounter = 0;
var interval = $interval(function () {
if (myCounter <= 35) {
myCounter++;
DoSomething();
} else {
//
}
}, 1500);
function setCurrentBallEffect() {
$('#ball_' + myCounter).addClass('magictime puffIn');
}
function DoSomething() {
if (myCounter == 0) {
$scope.ballIndex = 1;
} else {
$scope.ballIndex = myCounter;
}
}