Javascript find()jquery对多个元素的访问
我想使用find()jquery函数访问文档中的多个元素 当我打电话时Javascript find()jquery对多个元素的访问,javascript,jquery,html,css,jquery-ui,Javascript,Jquery,Html,Css,Jquery Ui,我想使用find()jquery函数访问文档中的多个元素 当我打电话时 $(document).find('.myclass') 我得到了所有的元素,但是我怎样才能具体地访问它们呢 我是说,如果我想像这样编辑列表的第一个元素 $(document).find('.myclass')[0].css('top', '20px'); 它不起作用,因为它只是代码而不是对象 具体编辑find()返回的一个对象的最佳方法是什么?当您使用[idx]访问项目时,返回的是DOM对象,而不是jQuery对象。如
$(document).find('.myclass')
我得到了所有的元素,但是我怎样才能具体地访问它们呢
我是说,如果我想像这样编辑列表的第一个元素
$(document).find('.myclass')[0].css('top', '20px');
它不起作用,因为它只是代码而不是对象
具体编辑find()返回的一个对象的最佳方法是什么?当您使用
[idx]
访问项目时,返回的是DOM对象,而不是jQuery对象。如果您想访问by索引,但仍然有一个jQuery对象,可以使用.eq()
:
由于索引0是第一个元素,如果这就是您想要的,那么也可以使用.first()
:
或
您还可以使用.each()
对它们进行迭代:
使用.eq()
您可以使用:
$('.myclass').first();
$('.myclass').last();
$('.myclass').eq(2); // the third element (first element is 0)
你甚至可能不需要一个发现,只是非常简单
$('.myclass').first().css('top', '20px');
留出一两个小时,从头到尾地阅读是非常值得的。这真的只需要那么长的时间,而且这段时间的回报是巨大的。是的,我已经读过这一页了,但是只有一个例子有一个结果…但是我会接受你的建议。Thx@Jason:可能值得解释的是,
每个
迭代器函数中的这个
不是jQuery对象,而eq
,first
等的结果是。可能还值得讨论[]
(直接访问DOM对象)。
$(document).find('.myclass:first')
$(document).find('.myclass').each(function() {
console.log(this); //logs current item (the element, not a jQuery object)
});
$(document).find('.myclass').eq(0).css('top', '20px');
$('.myclass').first();
$('.myclass').last();
$('.myclass').eq(2); // the third element (first element is 0)
$('.myclass').first().css('top', '20px');