我想使用一个id数组,对于我正在构建的小滑块查看器。我只想使用下一个和之前的2个按钮显示多个内容。
现在我使用这样的东西,只使用2个url id,但我的观众需要至少20个urlid:
var urlid1 = 'd3885ca76ac54e958c2855a4fbd3dbf3';
var urlid2 = '3aa64527d1614998b4812bfefbbc896a';
function Next() {
client.init( urlid2 );
}
function Previous() {
client.init( urlid1 ); }
所以我以前从未使用过数组,而且我尝试过的东西都不起作用。你知道这样做的正确方法吗?
答案 0 :(得分:0)
这似乎很直接
var index = 0;
var array = ["url1", "url2", "url3", ...]
function next() {
index++;
if(index > array.length) {
index = 0;
}
client.init(array[index]);
}
function previous() {
index--;
if(index < 0) {
index = array.length;
}
client.init(array[index]);
}
最好将这些对索引变量的更改重构为其他函数以实现重用,但这可以让您了解它是如何完成的。
如果客户端是您编写的内容,那么您可能希望查看函数的命名,init通常保留用于将类实例化为new,从您的示例中您似乎正在更改资源,因此您可能需要函数名称,如client.show();或者client.update();
答案 1 :(得分:0)
感谢Varedis。
最终代码是:
var index = 0;
var array = ["0e4b4e0789bf41c7b05129a76de0abb0","3aa64527d1614998b4812bfefbbc896a","d3885ca76ac54e958c2855a4fbd3dbf3","8f927023e10c40b9b22d3c13df7c08aa"];
client.init(array[index]);
function next() {
index++;
if(index >= array.length) {
index = 0;
}
client.init(array[index]);
}
function previous() {
index--;
if(index < 0 ) {
index = array.length-1;
}
client.init(array[index]);
}
我不得不使用“index = array.length-1;”但我无法解释它。你知道为什么 ?如果我只有4个值,那么索引如何为5?