求教jquery的大神,find("ul:first")表示什么
还有经常看到别人写的jquery代码里面用find,我一直不明白,为什么要用find呢,要选择哪个元素,直接$("")不就可以了吗。...
还有经常看到别人写的jquery代码里面用find,我一直 不明白,为什么要用 find呢,要选择哪个元素,直接$("")不就可以了吗。
展开
3个回答
展开全部
find就是获取子代,跟直接写选择器的时候的空格是一个功能。
如果是直接手写选择器当然是$(xxx)更方便一些,但是有的时候,插件里面或者公共方法里面,父级是通过一个参数传进来的,这个时候如果要获取他的子元素就只能通过.find了。
比如这个方法是将传递的对象下的p都加上my_style的class,再将子元素的img都设置padding。
就必须用到find了。
function(div){
div.find("p").addClass(“my_style”);
div.find("img").css("padding",5);
}
另外如果事先需要对父元素进行判断或者预处理,然后再做获取子元素操作的话,也需要用到find
比如
$("body").click(function(e){
var target=$(e.target);
if(target.is("div.tree")){
target.find("ul:first").addClass("tree_open");
}
})
如果是直接手写选择器当然是$(xxx)更方便一些,但是有的时候,插件里面或者公共方法里面,父级是通过一个参数传进来的,这个时候如果要获取他的子元素就只能通过.find了。
比如这个方法是将传递的对象下的p都加上my_style的class,再将子元素的img都设置padding。
就必须用到find了。
function(div){
div.find("p").addClass(“my_style”);
div.find("img").css("padding",5);
}
另外如果事先需要对父元素进行判断或者预处理,然后再做获取子元素操作的话,也需要用到find
比如
$("body").click(function(e){
var target=$(e.target);
if(target.is("div.tree")){
target.find("ul:first").addClass("tree_open");
}
})
展开全部
find() 方法获得当前元素集合中每个元素的后代,通过选择器、jQuery 对象或元素来筛选。
.find() 方法第一个明显特征是,其接受的选择器表达式与我们向 $() 函数传递的表达式的类型相同。
所以不管是用find()还是用你所说的$("")都能达到效果,具体怎么用,看个人喜好了。
至于find("ul:first")的意思是,在某一指定节点下找,第一个ul节点。
.find() 方法第一个明显特征是,其接受的选择器表达式与我们向 $() 函数传递的表达式的类型相同。
所以不管是用find()还是用你所说的$("")都能达到效果,具体怎么用,看个人喜好了。
至于find("ul:first")的意思是,在某一指定节点下找,第一个ul节点。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
通俗的说就是
find是找到同一类型的元素
这里可能包含多个
$("")包含一个
find("ul:first")表示第一个ul节点
你可以理解为sql里面的=和like
find是找到同一类型的元素
这里可能包含多个
$("")包含一个
find("ul:first")表示第一个ul节点
你可以理解为sql里面的=和like
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询