$(document).ready(function(){
//必须通过class属性获取jQuery包装的div数组,如果用id获取,则不行
var divs =[b] $("div.xu"); [/b] alert(divs.length);
for(i=0; i <divs.length; i++) {
divs[i].innerHTML = "hello xu" + i;
}
});
我想问一下,就是上面的divs 是通过$获取的jQuery对象,怎么遍历他时,divs[i]又变成了JavaScript原来的对象了呢(因为可以使用innerHTML不是吗)
还有一个问题就是如果把所有的div改成id为xu,则通过[color=indigo]$("div#xu")[/color]则不能把所有的div取出来放到divs里面不知为什么,难道非要通过设置class属性才可以吗,不知我说清楚了没有,希望前辈给我解答
第一个问题:不管是通过jquery,还是通过其它js框架,得到的都是js对象,只是封装的形式不一样。
第二个问题:根据id得到永远是唯一的,所以根据id是无法得到数组的。但是像根据class,name,tag等,获取对象,是可以得到对象数组的。
追加一个回复,如果是要取值就是
for (var i = 1; i < arrayDiv.length; ++i) {
alert(arrayDiv[i].innerHTML);
}
下标1开始