Jquery Javascript:如何在每次调用时循环通过数组
我试图创建一个函数,它在每次调用时选择数组中的下一个变量Jquery Javascript:如何在每次调用时循环通过数组,jquery,arrays,function,Jquery,Arrays,Function,我试图创建一个函数,它在每次调用时选择数组中的下一个变量 var nexttest=['abc','def','ghi']; function nexttest() { if (nexttest = 'abc') { $('#result').load('url1.html'); } else if (nexttest = 'def') { $('#result').load('url2.html'); } else { $('#result').load('url3.ht
var nexttest=['abc','def','ghi'];
function nexttest() {
if (nexttest = 'abc') {
$('#result').load('url1.html');
}
else if (nexttest = 'def') {
$('#result').load('url2.html');
}
else {
$('#result').load('url3.html');
}
}
有没有办法让nexttest第一次使用abc,第二次使用def,第三次使用ghi。您可以创建一个跟踪数组索引的变量:
var index = 0;
然后,在函数中,可以使用索引变量选择要与之交互的数组元素:
var interactWithThis = nexttest[index];
然后在每次调用函数时增加索引:
index++;
您将创建一个跟踪数组索引的变量:
var index = 0;
然后,在函数中,可以使用索引变量选择要与之交互的数组元素:
var interactWithThis = nexttest[index];
然后在每次调用函数时增加索引:
index++;
我更愿意这样做
var tester = function(){
var i = 0;
var tests = ['abc','def','ghi'];
this.nexttest = function() {
if (tests[i] == 'abc') {$('#result').load('url1.html');}
else if (tests[i] == 'def') {$('#result').load('url2.html'); }
else { $('#result').load('url3.html');}
i++;
};
}
var testing = new tester();
testing.nexttest();
testing.nexttest();
testing.nexttest();
testing.nexttest();
我更愿意这样做
var tester = function(){
var i = 0;
var tests = ['abc','def','ghi'];
this.nexttest = function() {
if (tests[i] == 'abc') {$('#result').load('url1.html');}
else if (tests[i] == 'def') {$('#result').load('url2.html'); }
else { $('#result').load('url3.html');}
i++;
};
}
var testing = new tester();
testing.nexttest();
testing.nexttest();
testing.nexttest();
testing.nexttest();
你真的是说if和else if中只有一个=吗?尽管已经提供的两种方法中的任何一种都可以很好地工作,如果你不需要维护nextest数组,你可以在每次调用函数时弹出值。你真的是说if和else if中只有一个=吗?尽管已经提供的两种方法中的任何一种都可以很好地工作,如果你不需要维护nextest数组,你可以在每次调用函数时弹出值。基思,谢谢你的建议。您知道如何从iframe调用此函数吗?我一直在尝试parent.testing.nexttest和window.parent.testing.nexttest,但两者都不起作用。parent.testing.nextest工作正常,只是协议的不同把它搞乱了,因为我用SSL查看我的站点,用SSL加载iframehttp://...oh 好吧,现在我明白了,时间浪费完了。基思,谢谢你的建议。您知道如何从iframe调用此函数吗?我一直在尝试parent.testing.nexttest和window.parent.testing.nexttest,但两者都不起作用。parent.testing.nextest工作正常,只是协议的不同把它搞乱了,因为我用SSL查看我的站点,用SSL加载iframehttp://...oh 好吧,现在我明白了,时间浪费完了。