文章
2018/9/28
Javascript和JQuery获取附近的元素
Javascript:
var j = document.getElementById("content");- 获取a的全部子节点
j.childNodes;- 获取a的父节点
j.parentNode;- 获取a的下一个兄弟节点
j.nextSibling;- 获取a的上一个兄弟节点
j.previousSibling;- 获取a的第一个子节点
j.firstChild;- 获取a的最后一个子节点
j.lastChild;JQuery的要方便不少:
var q = $("#content");- 找父亲节点,可以传入expr进行过滤,比如
$("span").parent()或者$("span").parent(".class")
q.parent(expr);- 类似于jQuery.parents(expr),但是是查找所有祖先元素,不限于父元素
q.parents(expr);- 返回所有子节点,这个方法只会返回直接的孩子节点,不会返回所有的子孙节点
q.children(expr);- 返回下面的所有内容,包括节点和文本。这个方法和children()的区别就在于,包括空白文本,也会被作为一个jQuery对象返回,children()则只会返回节点
q.contents();- 返回上一个兄弟节点,不是所有的兄弟节点
q.prev();- 返回所有之前的兄弟节点
q.prevAll();- 返回下一个兄弟节点,不是所有的兄弟节点
q.next();- 返回所有之后的兄弟节点
q.nextAll();- 返回兄弟姐妹节点,不分前后
q.siblings();- 跟q.filter(expr)完全不一样。q.filter()是从初始的q对象集合中筛选出一部分,而q.find()的返回结果,不会有初始集合中的内容,比如
$("p").find("span"),是从p元素开始找,等同于$("p span")
q.find(expr);如果咩咩的文章对您有帮助,您可以 请我喝牛奶