老师,有个jquery取对象的问题
在做轮播图左右箭头切换图片的功能
$(".arrow").click(function(){
if($(this)[0].id == 'left'){
index--;
}else if($(this)[0].id == 'right'){
index++;
}
if(index <= 0){
index = imgList.length - 1;
}else if(index >= imgList.length){
index = 0;
}
changeImg();
});
不明白的是为什么$(this)[0]可以这么写,我本来写的$(this).eq(0)这样不行
jquery不是如果取对象是要用eq的吗?这样直接[0]不是是数组的取法吗?突然混乱...
0
收起
正在回答
1回答
同学,你好。这里$(this)[0] 获取到的是 dom对象(可以使用dom属性,方法,不可以使用jq属性方法),而 $(this).eq(0) 获取到的则是 jquery对象(可以用jq的属性、方法,不可以使用dom属性方法)。这里需要获取的是dom对象,因此要用$(this)[0].
祝学习愉快!
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星