我有一個無序列表,並在每個ListItem
點擊時,它調用setActive()
AngularJS,接口不更新預期
<li ng-repeat="slide in data" ng-click="setActive(slide.slideIndex)">
<span class="listItemText">
<b>{{slide.slideIndex + 1}}. </b>{{slide.Title}}
</span>
</li>
setActive()
是:
$scope.setActive = function(id)
{
$scope.currentIndex = id;
}
當我點擊List Items
我更新圖片:
<img id="slide" ng-src="resources/slides/slide{{currentIndex + 1}}.jpg" />
這一切工作正常
什麼不工作是我有一個視頻播放器,在某些time
的I需要更新$scope.currentIndex
我認爲這將很好地工作:
player.addEventListener("timeupdate", function()
{
currentTime = player.currentTime;
angular.forEach($scope.data, function(value, key)
{
if (currentTime >= $scope.data[key].time && currentTime <= $scope.data[key].time + 0.3 && $scope.currentIndex != key)
{
console.log("load id:" + key);
$scope.setActive(key); //Calling what works when I click a listItem
}
});
});
console.log
工作並在提示點上記錄,但是,圖像不會更新,直到我列出了MouseOver
。此時,圖像將更新爲任何$scope.currentIndex
恰巧。我完全失去了這一點。有任何想法嗎?
太棒了!那就是訣竅,謝謝!我早些時候閱讀了一些有關申請的內容,但無法使其發揮作用。我至少......再次感謝 – Ronnie 2013-03-11 23:47:22