我有这个小函数给出错误,因为i is undefined
:
var i = 0
setInterval(function(i){
var i = ( i < $(".news-items li").length ) ? i++ : 0 ;
$(".news-items li").hide();
$(".news-items li:eq("+i+")").show();
}, 1000)
有人能发现问题吗?
答案 0 :(得分:2)
setInterval(function(i){
您将i
重新声明为匿名函数中的局部变量。删除函数参数列表中的i
。
var i = 0
setInterval(function(){
// Note that this will NOT update the global "i"
// if you want it to, remove "var"
// Also change "i++' to "i+1"
var i = ( i < $(".news-items li").length ) ? i+1 : 0 ;
$(".news-items li").hide();
$(".news-items li:eq("+i+")").show();
}, 1000)