我有这个HTML:
<div ng-repeat="image in images">
<img ng-src="img/{{image}}_off.png" />
</div>
控制器中的这个javascript:
$scope.images = ['imga','imgb','imgc'];
我也有这些图像文件:
imga_off
imga_on
imgb_off
imgb_on
imgc_off
imgc_on
单击图像时,我需要在打开和关闭之间切换。
我不确定最好的方法是什么。 是关于为每个img元素附加ng模型吗? 或者有更好的方法吗?
答案 0 :(得分:2)
按住$scope
变量中的切换数据:
var $scope.toggles = [false, false, false];
根据$index
切换:
<div ng-repeat="image in images">
<img ng-src="img/{{image}}_{{ toggles[$index] ? 'on' : 'off' }}.png" ng-click="toggles[$index] = !toggles[$index]"/>
</div>
注意:此代码未经测试,但这是一种通用方法。您还可以将切换数据作为$scope.images