Javascript angular js和ng src中的双向绑定
调用Javascript angular js和ng src中的双向绑定,javascript,angularjs,Javascript,Angularjs,调用changeMainMedia函数时,当前值应更改,然后ng src=“{{array[current].src}}”也应更改,但它不起作用。任何帮助都将不胜感激 <div id="media-gallery" class="small reveal text-center media-gallery" data-reveal> <div class="modal-body"> <div class="main-media">
changeMainMedia
函数时,当前值应更改,然后ng src=“{{array[current].src}}”
也应更改,但它不起作用。任何帮助都将不胜感激
<div id="media-gallery" class="small reveal text-center media-gallery" data-reveal>
<div class="modal-body">
<div class="main-media">
<img ng-bind="current" class="main-gallery media-gallery-main" ng-src="{{array[current].src}}" / </div>
<hr>
<div class="nested-media">
<img ng-click="changeMainMedia($index)" ng-repeat="obj in array" class="thumbnail media-gallery-thumbnail" ng-src="{{obj.src}}" />
</div>
</div>
<button class="close-button" data-close aria-label="Close reveal" type="button">
<span aria-hidden="true">x</span>
</button>
</div>
</div>
<script>
var app = angular.module("mediaGallery", []);
app.controller("mediaGalleryCtrl", ['$scope', function(scope) {
var array = [];
for (var i = 1; i < 10; i++) {
array.push({
src: "gallery/image (" + i + ").jpg"
});
}
scope.array = array;
scope.current = 0;
scope.changeMainMedia = function(index) {
this.current = index;
}
}]);
x
var-app=angular.module(“mediaGallery”,[]);
app.controller(“mediaGalleryCtrl”,[“$scope”,函数(scope){
var数组=[];
对于(变量i=1;i<10;i++){
array.push({
src:“画廊/图片(“+i+”).jpg”
});
}
scope.array=数组;
scope.current=0;
scope.changeMainMedia=函数(索引){
这个。当前=指数;
}
}]);
您应该更改当前的范围变量
scope.changeMainMedia = function(index) {
this.current = index
}
应该是
scope.changeMainMedia = function(index) {
scope.current = index;
}
相反,当用户单击图像时,您可以在另一个范围变量中选择图像,如ng click=“selectedImage=obj”
标记
<div class="main-media">
<img ng-bind="current" class="main-gallery media-gallery-main"
ng-src="{{selectedImage.src}}"/>
<hr>
<div class="nested-media">
<img ng-click="selectedImage = obj" ng-repeat="obj in array" class="thumbnail media-gallery-thumbnail" ng-src="{{obj.src}}" />
</div>
</div>