我有一个javascript数组,mediaSizes
如下:['xs','md','lg']
。骑自行车穿过Javascript Array
我使用变量media
来引用数组中的特定索引。因此媒体可以是0,1或2.因此mediaSizes[media]
应输出xs
,md
或lg
。
我有上下箭头供用户循环访问这个数组。但是,当用户单击向上箭头,并且media
的值为2
时,我希望用户循环回到xs
。同样,如果用户按下xs
上的向下箭头,我希望它们循环到较大。
我有以下if
else
的声明,但它似乎并不奏效:
var mediaSizes = ['xs','md','lg'];
var media = 0;
$scope.mediaDisplay = mediaSizes[media];
$scope.changeMedia = function(direction) {
if (media > 2 || media < 0) {
media = 0;
} else {
if (direction == 'up') {
media ++;
$scope.mediaDisplay = mediaSizes[media];
} else {
media --;
$scope.mediaDisplay = mediaSizes[media];
}
}
}
现在,我决定为得到它的工作的缘故media
值设置为0。必须有一个更简单的方法来循环通过0,1,2 ...
'var mediaDisplay'是'$ scope.mediaDisplay'(或者只是'mediaDisplay',取决于'$ scope'是什么?)否则,'mediaDisplay'的值被限制在changeMedia函数中...... – Jack 2015-02-07 01:13:41
var mediaDisplay '不是真正的只要改变一切。 – Timmerz 2015-02-07 01:14:35
应该是$ scope。为了简单起见,我正在改变它,看起来是相反的。查看修改。 – Himmel 2015-02-07 01:15:20