jQuery提供的方法

  上来就把jQuery提供的方法摆在这里是不是有点不好呀,不过,我们从jQuery的方法名称上就能知道这些方法是干嘛的了。

parent(selector) 查找父元素,可传入selector进行过滤(下同)
parents(selector) 查找所有的祖先节点
children(selector) 返回所有的子节点,不过该方法只会返回直接的子节点,不会返回所有的子孙节点
prev() 返回该节点的上一个兄弟节点
prevAll() 返回该节点之前所有的节点
next() 返回该节点的下一个兄弟节点
nextAll() 返回该节点之后所有的节点
siblings() 返回该节点所有的兄弟节点,不分前后
find(selector) 返回该节点所有的子孙节点

  看完所有的方法之后,我们可以发现:children()只能获取直接的子节点;而find能获取所有的子孙节点,当然也包括直接的子节点。

js提供的方法

1 获取元素节点// 通过id的方式( 通过id查找元素,大小写敏感,如果有多个id只找到第一个)document.getElementById('div1');// 通过类名查找元素,多个类名用空格分隔,得到一个HTMLCollection(一个元素集合,有length属性,可以通过索引号访问里面的某一个元素)var cls = document.getElementsByClassName('a b');console.log(cls);// 通过标签名查找元素 返回一个HTMLCollectiondocument.getElementsByTagName('div');// 通过name属性查找,返回一个NodeList(一个节点集合,有length属性,可以通过索引号访问)var nm =  document.getElementsByName('c');console.log(nm);// 获取所有form标签(得到一个HTMLCollection集合)var form = document.forms;// html5新加标签(ie8+)// document.querySelector(); //  返回单个node,如果有多个匹配元素就返回第一个// document.querySelectorAll(); // 返回一个nodeList集合

// 2 创建节点

    // 创建元素,只是创建出来并未添加到html中,需要与appendChild 配合使用var elem = document.createElement('p');elem.id = 'test';elem.style = 'color: red';elem.innerHTML = '我是新创建的节点';document.body.appendChild(elem);// 创建文本节点 createTextNodevar txt = document.createTextNode('我是文本节点');document.body.appendChild(txt);// 克隆节点(需要接受一个参数来表示是否复制元素)var form =  document.getElementById('test');var clone = form.cloneNode(true);clone.id = 'test2';document.body.appendChild(clone);//文档碎片的方式(提升性能)(function(){var start = Date.now();var str = '', li;var ul = document.getElementById('ul');var fragment = document.createDocumentFragment();for(var i=0; i<10000; i++){li = document.createElement('li');li.textContent = '第'+i+'个子节点';fragment.appendChild(li);}ul.appendChild(fragment);console.log('耗时:'+(Date.now()-start)+'毫秒'); // 63毫秒})();// 3 节点修改API//节点修改APi有两个特点// 1 不论新增还是替换节点,如果原本就在页面上,就会被替换// 2 修改之后节点本身绑定的事件不会小时// 1 appendChild ()// 用法是: parent.appendChild(child)// 会将child节点添加到parent里的最后面,如果子节点原本就存在,会移除原节点,添加新节点// 到最后,但是事件会保留// 2 insertBefore()// 用法是 parent.insertBefore(newNode,refNode);// refNode 是必须传的 不传会报错// 如果 refNode 是undefined 和null 就会将新节点传入到parent节点的最后// 3 removeChild()// 用法是:parent.removeChild(child)// 如果删除的不是父元素的子节点会报错// var deleted = parent.removeChild(child)// deleted 可以继续引用节点 ,被删除节点依然存在与内存中// 4 replaceChild()// 用法是:parent.replaceChild(newChild, oldChild);// 4 节点的关系APi// 1 父关系API//  parentNode 父节点//  parentElement父元素// 2 子关系API// children 子元素// childNodes 子节点// firstElementChild 第一个子元素// firstChild 第一个子节点// lastElementChild 最后一个子元素// lastChild 最后一个子节点// 3 兄弟关系的API// previousSibling 节点的上一个兄弟节点// previousElementSibling  节点的上一个兄弟元素(ie9以下不支持)// nextSibling  节点的下一个兄弟节点// nextElementSibling 节点的下一个兄弟元素(ie9以下不支持)// 5 节点属性API// setAttribute(name,value) 给元素设置属性// getAttribute(name)   获取元素属性// 6 直接修改元素的样式elem.style.color = 'red';elem.style.setProperty('font-size', '16px');elem.style.removeProperty('color');// 7 动态添加样式var style = document.createElement('style');style.innerHTML = 'body{color:red} #top:hover{background-color: red;color: white;}';document.head.appendChild(style);// 8 window.getComputedStyle// 用法是:var style = window.getComputedStyle(element[, pseudoElt]);
// element:目标元素的DOM对象// pseudoElt:指明要匹配的伪元素,对于普通元素必须指定为null(或省略)

转载于:https://www.cnblogs.com/found80/p/7422786.html

jquery js 兄弟父元素的获取相关推荐

  1. jQuery中兄弟元素、子元素和父元素的获取

    我们这里主要总结jQuery中对某元素的兄弟元素.子元素和父元素的获取,原声的Javascript代码对这些元素的获取比较麻烦一些,而jQuery正好对这些方法进行封装,让我们更加方便的对这些元素进行 ...

  2. class 原生js获取父元素_JS获取节点的兄弟,父级,子级元素的方法

    先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比. JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当最DOM元素 原生的J ...

  3. js中Dom元素及获取方法

    DOM基础对象 document document.documentElement  html部分 document.head document.title document.body  body部分 ...

  4. js中根据元素名获取对象,根据id获取等等。。。

    获取: //根据ID获取var aa = document.getElementById('bo')://根据元素名获取 返回一个集合var bb = document.getElementsByTa ...

  5. jquery遍历(父元素、祖先、后代)

    parent:被选元素的直接父元素(只会对上一级DOM元素遍历) $(document).ready(function(){$("span").parent().css({&quo ...

  6. vue 获取当前元素的父元素_vue获取dom元素内容

    通过ref来获取dom元素 在vue官网上对ref的解释 ref 被用来给元素或子组件注册引用信息.引用信息将会注册在父组件的 $refs 对象上.如果在普通的 DOM 元素上使用,引用指向的就是 D ...

  7. vue 获取当前元素的父元素_react获取触发元素的属性 e.target.dataset

    我的react项目中一个应用场景就是在点击一个元素的时候想要获取到这个元素的属性. 代码如下: renderyear=()=>{return(<div><div data-va ...

  8. Jquery中如何根据元素对象获取该对象的ID值

    1.我参考网上说的: 先判断是jquery对象还是html对象 如果是jquery对象,                 可以直接用 jquery对象.attr("id")获取 如 ...

  9. JS DOM 编程复习笔记--父元素、子元素和兄弟元素(三)

    今天我们来复习DOM中的获取父元素.子元素和兄弟元素的API,它们主要有parentNode.firstChild.firstElementChild.lastChild.lastElementChi ...

最新文章

  1. python里实现DSL
  2. java中path和classpath_java中的环境变量path和classpath的作用-Go语言中文社区
  3. SqlBulkCopy批量插入数据库
  4. linux AB测试
  5. 阴阳师服务器维护更新,阴阳师服务器3月10日维护更新了什么 阴阳师服务器3月10日维护更新一览...
  6. TCP/IP详解 笔记十一
  7. TCP/IP路由技术 -1.3 IPv4地址
  8. C++入门项目必练100题
  9. C51单片机-蓝牙遥控小车
  10. Apple 开发者账户类型
  11. 手把手教你做短视频去水印微信小程序(5-服务端代码)
  12. 蒟蒻的第一次豆瓣读书爬虫实践
  13. 计算机常用的内存是rom,手机内存和电脑内存是一样的吗?智能硬件常用的ROM和RAM详解...
  14. 西方占星术中的人体十二宫
  15. python 获取路由器中设备ip地址_Python中如何获取当前机器的IP地址
  16. 编码器SRT协议三种模式(listener, caller, rendezvous)简介
  17. 前端html + js视频播放器(快进,快退,倍速,全屏等功能)
  18. H5接入微信公众号方法(超详细)
  19. 【SV中local::的用法】
  20. Leetcode-至多包含两个不同字符的最长子串

热门文章

  1. Python中import导入模块
  2. java static 块作用_java static块有什么具体的作用和注意事项?说具体点
  3. 扑捉和捕捉的区别照相_扑捉和捕捉的区别照相
  4. python如何读取tfrecord_tensorflow读取tfrecords格式文件
  5. php 模拟请求工具,http-mock-master模拟HTTP请求库
  6. linux中paste的用法,在Linux中使用Paste命令来合并行,包括使用Paste命令技巧及注意事项...
  7. mysql 柱状图统计_js/jquery 进行动态统计 各种柱状图 饼状图 线条图 等
  8. 搞定使用MySQL导入外部的SQL文件执行
  9. springboot注解整理
  10. Python编程基础17:构造方法和析构方法