jquery 最接近的() 父() 父()查找父节点
HTML代码,测试地址:jQuery遍历-最接近()方法。
-谁能教我这个肿?1.通过第1项找到第3级(找到直接上级)。复制代码如下: $ ('li。项目-1’)。最接近(' ul') $ ('li。项目-1’)。parent () $ ('li。项目-1’)。父母(。2.通过项目1查找级别2(通过选择器查找父元素)。复制代码如下: $ ('li。项目-1’)。最近的('。level-2')//$ ('li。项目-1’)。父代('。level-2')//。$ ('li。项目-1’)。父项()。parent()//这太蠢了!选择符在李中的用法。项目-1’)。父母('。level-2 ')父级(选择器)复制如下: $('li ')。parent() //返回第三级、第二级和第一级的集合。它们都是li的父元素:$('li ')。父代('。level-3 ')//level-3 3 . close方法从上面的集合中选择,parent()从parent元素开始!$('li.item-1 ')。最接近(' li') //返回项目-1。使用时要注意。如果div嵌套在中的div中,请考虑选择器的正确用法!4.壁橱(选择器,上下文)中上下文参数的使用从当前元素遍历到上下文元素的末尾。如果没有上下文参数,遍历到根节点说明使用上下文参数可以提高查询效率!复制代码如下: varlistitem II=document . getelementbyid(' II ');//item-ii//varlistitemii=$(' # ii '),这样不行,已经迷惑很久了!$('li.item-1 ')。最接近(' ul ',listItemII)。css('背景色','红色');//结果必须是item-1的父ul元素,itemII的子元素,$ ('Li。项目-1’)。最接近('一',listitemii)。CSS('背景色','绿色');//id=item-1之一的元素必须是itemII的子元素。找不到5.context参数的分析和复制代码。代码如下:closest3360function(选择器,上下文){varret=[],I,l,cur=this[0];//String var pos=POS.test(选择器)||选择器的类型!=='字符串'?jQuery(选择器,上下文| | this . context): 0;for (i=0,l=this.lengthI l;i ) { cur=这个[I];而(cur ) { if (pos?pos . index(cur)-1 : jquery . find . matches selector(cur,selecters)){//如果找到匹配的元素,将其添加到返回值集中!转到下一个元素的搜索ret . push(cur);打破;} else { cur=cur.parentNode//向上遍历DOM树,匹配选择器。//在上述过程中,如果父节点不存在、到达的根节点不存在或者找到上下文节点(已经到达指定位置)!if(!cur ||!cur . ownerdocument | | cur===context | | cur . nodetype===11){ break;} } } } ret=ret.length 1?jquery . unique(ret): ret;返回this.pushStack(ret,'最接近',选择器);}我对JQuery源代码了解不多,就不解释一些细节了!根据最接近()的定义,与上下文比较的变量cur=this[i]是一个DOM对象,而$('#ii ')方法得到一个JQuery对象,所以传递给最接近(选择器,上下文)方法的上下文参数必须通过DOM方法获取!jQuery对象和DOM对象之间的转换?1.获取对象(变量名前加$的目的是为了同意区分jQuery和DOM变量):获取JQuery对象:var $variable=jQuery对象;获取DOM对象:var变量=DOM对象;2.jQuery对象到DOM对象:使用数组转换var Cr=$(' # Cr ')[0];使用get(index)方法转换var cr=$('#cr ')。get(0);3.转移3。DOM对象到jQuery对象:复制的代码如下: varcr=document . getelementsbyid(' Cr ');//获取DOM对象var $ Cr=$(Cr);//转换为jQuery对象,所以…$ ('li。项目-1’)。最接近(' # 1 ',$ ('# ii ')。get (0))。当然,修改源代码不是一个好的建议,但是为什么JQuery本身不使用这个方法呢.求教!
版权声明:jquery 最接近的() 父() 父()查找父节点是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。