广告:宝塔Linux面板高效运维的服务器管理软件 点击【 https://www.bt.cn/p/uNLv1L 】立即购买
本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了关于获取元素和节点的相关内容,包括了通过id、类名、name、标签名获取元素,创建、删除、克隆节点等问题,下面一起来看一下,希望对大家有帮助。
【相关推荐:javascript视频教程、web前端】
获取元素通过ID获取(getElementById)通过name属性(getElementsByName)通过标签名(getElementsByTagName)通过类名(getElementsByClassName)通过选择器获取一个元素(querySelector)通过选择器获取一组元素(querySelectorAll)获取html的方法(document.documentElement)获取body的方法(document.body)1.通过ID获取(getElementById)// 1 获取元素节点 // 通过id的方式( 通过id查找元素,大小写敏感,如果有多个id只找到第一个) document.getElementById('p1');登录后复制上下文必须是document。必须传参数,参数是string类型,是获取元素的id。返回值只获取到一个元素,没有找到返回null。2.通过类名(getElementsByClassName)
// 通过类名查找元素,多个类名用空格分隔,得到一个HTMLCollection(一个元素集合,有length属性,可以通过索引号访问里面的某一个元素) var cls = document.getElementsByClassName('a b'); console.log(cls);登录后复制参数是元素的类名。返回值是一个类数组,没有找到返回空数组3.通过name属性(getElementsByName)
// 通过name属性查找,返回一个NodeList(一个节点集合,有length属性,可以通过索引号访问) var nm = document.getElementsByName('c'); console.log(nm);登录后复制4.通过标签名(getElementsByTagName)
// 通过标签名查找元素 返回一个HTMLCollection document.getElementsByTagName('p');登录后复制参数是是获取元素的标签名属性,不区分大小写。返回值是一个类数组,没有找到返回空数组 5.通过选择器获取一个元素(querySelector)
document.querySelector('.animated')登录后复制登录后复制参数是选择器,如:”p .className”。返回单个node,如果有多个匹配元素就返回第一个6.通过选择器获取一组元素(querySelectorAll)
document.querySelector('.animated')登录后复制登录后复制 返回值是一个类数组获取节点
在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性
1. nodeName : 节点的名称
2. nodeValue :节点的值
3. nodeType :节点的类型
一、nodeName 属性: 节点的名称,是只读的。
元素节点的 nodeName 与标签名相同属性节点的 nodeName 是属性的名称文本节点的 nodeName 永远是 #text文档节点的 nodeName 永远是 #document二、nodeValue 属性:节点的值
元素节点的 nodeValue 是 undefined 或 null文本节点的 nodeValue 是文本自身属性节点的 nodeValue 是属性的值三、nodeType 属性: 节点的类型,是只读的。以下常用的几种结点类型:
元素类型 节点类型元素 1属性 2文本 3 空格也是返回3注释 8文档 9 创建节点:1.创建节点:createElement('')
// 创建元素,只是创建出来并未添加到html中,需要与appendChild 配合使用 var elem = document.createElement('p'); elem.id = 'test'; elem.style = 'color: red'; elem.innerHTML = '我是新创建的节点'; document.body.appendChild(elem);登录后复制
2.插入节点:appendChild ()
用法是: parent.appendChild(child)会将child节点添加到parent里的最后面如果子节点原本就存在,会移除原节点,添加新节点 到最后,但是事件会保留var oNewp=document.createElement("p"); var oText=document.createTextNode("World Hello"); oNewp.appendChild(oText);登录后复制
2-1.插入节点:insertBefore()
用法是 parent.insertBefore(newNode,refNode);var oOldp=document.body.getElementsByTagName("p")[0]; document.body.insertBefore(oNewp,oOldp);登录后复制 删除节点
1.删除节点:removeChild
用法是:parent.removeChild(child) 如果删除的不是父元素的子节点会报错var op=document.body.getElementsByTagName("p")[0]; op.parentNode.removeChild(op);登录后复制 克隆节点
1.克隆节点:parent.cloneNode() false 或者true
克隆节点(需要接受一个参数来表示是否复制元素)// 通过类名查找元素,多个类名用空格分隔,得到一个HTMLCollection(一个元素集合,有length属性,可以通过索引号访问里面的某一个元素) var cls = document.getElementsByClassName('a b'); console.log(cls);0登录后复制 替换节点
1.替换节点 方法node.replace(new,old)
// 通过类名查找元素,多个类名用空格分隔,得到一个HTMLCollection(一个元素集合,有length属性,可以通过索引号访问里面的某一个元素) var cls = document.getElementsByClassName('a b'); console.log(cls);1登录后复制 文档碎片框 作用:当向document中添加大量的节点时,如果逐个添加将会十分缓慢,这时可以使用文档碎片一次性添加到document中语法:document.createDocumentFragment();承载节点
// 通过类名查找元素,多个类名用空格分隔,得到一个HTMLCollection(一个元素集合,有length属性,可以通过索引号访问里面的某一个元素) var cls = document.getElementsByClassName('a b'); console.log(cls);2登录后复制
【相关推荐:javascript视频教程、web前端】
以上就是JavaScript知识点整理之获取元素和节点的详细内容,更多请关注9543建站博客其它相关文章!
发表评论