[英]Click on 1 item in jQuery selector array is applying to all elements in the array
[英]applying methods to single elements in an array - jquery/javascript
我创建了一个称为$images
的元素数组( hidden
类中的所有元素。)然后,当我尝试将任何方法仅应用于数组中的一个元素时,我得到的是$images[1].attr is not a function
错误。 但是,例如,当我尝试$images.attr('id')
而不指定数组的索引时,它可以工作,但仅提供数组中第一个元素的结果。
$images = $(".hidden");
alert($images[1].attr('id'));
这是怎么回事,如何将方法应用于数组中的单个元素? 顺便说一句,我确定在对此进行测试时,数组中至少有两个元素。
使用.eq,如下所示:
$images = $(".hidden");
alert($images.eq(1).attr('id'));
希望这可以帮助!
$images[1]
不返回jQuery对象,而是返回一个dom元素。
您想要$($images[1]).attr('id')
jQuery用来装饰结果数组的额外方法在元素本身中不存在。 要获取特定元素,可以使用eq
选择器或方法:
$images = $(".hidden");
alert($images.eq(1).attr('id'));
要么
$image = $(".hidden:eq(1)");
alert($image.attr('id'));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.