我要做的是迭代一组值并在HTML上显示它。并重复一遍。它在更新HTML时应该有1秒的间隔。
到目前为止,这是我尝试过的,似乎我的setInterval运行不正常? 感谢。
<div class='x'>Hello World</div>
var arr = [
'lorem ipsum',
'dolor sit amet',
'abc def ghij klmn?',
'esprit d corps'
];
if (arr) {
$.each(arr, function (i, v) {
setInterval(function () {
var index = i == arr.length - 1 ? 0 : i;
var data = arr[index];
console.log(data);
$('.x').html(data);
console.log();
}, i * 1000);
});
}
答案 0 :(得分:3)
你需要什么?
var arr = [
'lorem ipsum',
'dolor sit amet',
'abc def ghij klmn?',
'esprit d corps'];
if (arr) {
var i = 0;
setInterval(function () {
i = i == arr.length ? 0 : i;
var data = arr[i];
$('.x').html(data);
i++;
}, 1000);
}
演示:Fiddle
答案 1 :(得分:0)
试试这段代码。
var arr = [ &#39; lorem ipsum&#39;, &#39; dolor sit amet&#39;, &#39; abc def ghij klmn?&#39;, &#39; esprit d corps&#39; ];
var i = 0;
if(arr){
setInterval(function () {
i = (i == arr.length - 1) ? 0 : i;
var data = arr[i];
printValue(data);
i++;
}, 1000);
}
function printValue(str){
$('.x').html(str);
}
这是JS Fiddle的工作演示 http://jsfiddle.net/wuf25fj8/8/