0

我试图让我的数组的总大小成为我正在制作的图像轮播的一部分的索引。每次我尝试这样做时,获取数组长度的变量集似乎都不起作用。

这些是我的图像:

var carouselImages = [
    {
        url : 'images/carousel/carousel1.jpg'
    },
    {
        url: 'images/carousel/carousel2.jpg'
    },
    {
        url: 'images/carousel/carousel3.jpg'
    },
    {
        url: 'images/carousel/carousel4.jpg'
    },
    {
        url: 'images/carousel/carousel5.jpg'
    },
    {
        url: 'images/carousel/carousel6.jpg'
    },
    {
        url: 'images/carousel/carousel7.jpg'
    },
    {
        url: 'images/carousel/carousel8.jpg'
    },
    {
        url: 'images/carousel/carousel9.jpg'
    }
];

这是我的总图像变量,该控制台记录了这个数字:

var totalImages =  carouselImages.length;

然后这些是我的三个 div:

// SET PREVIOUS CAROUSEL IMAGE
$scope.prevImage = {
    'background-image' : 'url(' + carouselImages[totalImages].url + ')'
};

$scope.isPrevActive = false;

// SET CURRENT CAROUSEL IMAGE
$scope.currentImage = {
    'background-image' : 'url(' + carouselImages[0].url + ')'
};

$scope.isCurrentActive = true;

// SET NEXT CAROUSEL IMAGE
$scope.nextImage = {
    'background-image' : 'url(' + carouselImages[1].url + ')'
};

控制台说它“无法读取未定义的 url”,但 url 是在数组中定义的。请帮忙!

4

1 回答 1

3

totalImages超出范围。数组中的最后一个索引是totalImages - 1

// SET PREVIOUS CAROUSEL IMAGE
$scope.prevImage = {
    'background-image' : 'url(' + carouselImages[totalImages - 1].url + ')'
};
于 2013-10-11T13:57:04.203 回答