ske*_*rit 1 javascript jquery loops
我正在尝试一些非常基本的东西,但我无法弄清楚为什么这不起作用.我可以使用[i]获取有关该对象的信息,但我无法以这种方式更改数据?
    // Make all the li's invisible
$('div#rotator ul li').css({opacity: 0.0});
// Calculate a random number between 1 and 3
var randnr = Math.floor((1-4)*Math.random()) + 4;
for(var i = 0; i < $('#rotator ul li').length; i++) {
            // Make the i element appear
    $('#rotator ul li')[i].css({opacity: 1.0});
}
jQuery对象是类似于数组的对象,可以用作原始DOM元素的数组.
因此,$(...)[i]获取第i个原始DOM元素,而不是包含它的jQuery对象.
要获取包含第i个元素的jQuery对象,请调用.eq()方法,如下所示:
$('#rotator ul li').eq(i).css({opacity: 1.0});
您还可以使用:eq选择器:
$('#rotator ul li:eq(i)').css({opacity: 1.0});
但是,您根本不需要循环; 你可以一次隐藏所有元素:
$('div#rotator ul li').css({opacity: 1.0});