将HTML字符转换为DOM节点并动态添加到文档中 将字符串动态转换为DOM节点,在开发中经常遇到,尤其在模板引擎中更是不可或缺的技术。...字符串转换为DOM节点本身并不难,本篇文章主要涉及两个主题: 1 字符串转换为HTML DOM节点的基本方法及性能测试 2 动态生成的DOM节点添加到文档中的方法及性能测试 本文的示例:...DOCTYPE html> html lang="en"> <meta name="viewport" content="width...1.1 动态创建Node 1.1.1 innerHTML 第一种方法,我们使用document.createElement方法创建新的元素,然后利用innerHTML将字符串注入进去,最后返回firstChild...下面我们看看将生成的DOM元素动态添加到文档中的方法。 1.2.0 批量添加节点 被动态创建出来的节点大多数情况都是要添加到文档中,显示出来的。下面我们来介绍并对比几种常用的方案。
css选择器定位所有匹配的元素 NodeList querySelectorAll('.pElement') Document对象也提供了一些属性: 属性 作用 documentElement 获取HTML...页面中的html>元素 head 获取HTML页面中的元素 title 获取HTML页面中的元素 body 获取HTML页面中的元素 links 获取HTML页面中的...元素 images 获取HTML页面中的元素 NodeList与HTMLCollection的区别 二者都是集合 NodeList又称静态NodeList,就是就是对文档对象模型的任何改动都不会影响集合的内容...将文本节点作为元素节点的子节点添加 optionElement.appendChild(textNode) // 6....将创建的元素节点添加到页面中去 select.appendChild(optionElement) 第二种 // 1.
HTML 小技巧分享之 —— 快速将一行 div 元素 设置到底部 一、导语 二、分析结构框架 三、代码实现 3.1 不引用外部样式 3.2 引用外部 css 样式 一、导语 很久都没有更新了,今天再更新一些使用的小技巧...,今天给大家带来的内容是如何快速的将一行 div 元素设置到屏幕底部,今天的主要内容有 css 文件的引入,使用 link 标签,以及各个参数的解释 把元素置于文件底部的 css 样式编写 div 标签的使用...二、分析结构框架 先给大家看一看效果图 这个样式我们需要做如下处理 HTML 部分 编写 HTML 代码 使用 div 标签编写好元素 然后就是 在 head 标签里直接设置样式,或者通过外部文件...lang="en"> 将一行元素置于底部title> div {...UTF-8"> 将一行元素置于底部title> head
最近在学DOM,但是还是没有办法很好的记住API,想找些例子来练习,网上的例子将一个个DOM对象方法挨个举例,并没有集合在一起用,效果不尽人意。...通过createElement()创建li节点,然后再通过textContent属性来给新建的节点增加内容,最后在通过appendChild()将li节点绑定到ul上面。...现在,我打算用“第四个节点”替换掉“第一个节点”,这里需要用的replaceChild()函数以及获取第一个元素firstChild。...DOCTYPE html> html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="Content-Type" content...("li");//创建一个li节点 newNode1.textContent = "第一个节点";//给新创建的li节点赋值 oUl.appendChild(newNode1);//添加到
一、节点层次 在HTML页面中,文档元素始终都是html>元素。 1. Node类型 JavaScript中的所有节点类型都继承自Node类型,因此所有节点类型都共享着相同的基本属性和方法。...示例:将blog元素移动到content中 将blog作为content的第一个子元素,将company作为content的最后一个子元素 <!...动态脚本 在元素添加到页面之前,是不会下载外部文件的。...动态样式 同动态加载脚本类似,添加到页面之后才会加载资源。
p 元素 querySelectorAll(): 通过 CSS 选择器获取所有匹配的元素集合 (NodeList)。...创建和添加元素: createElement(): 创建新的 HTML 元素。...let newParagraph = document.createElement("p"); appendChild(): 将新元素添加到父元素的子节点列表末尾。...添加到 myElement 的末尾 insertBefore(): 将新元素添加到父元素的指定子节点之前。...console.log(element.parentNode); childNodes: 获取元素的所有子节点 (NodeList)。
浏览器会根据DOM模型,将结构化文档(比如HTML和XML)解析成一系列的节点,再由这些节点组成一个树状结构(DOM Tree)。所有的节点和最终的树状结构,都有规范的对外接口。...childNodes:标准属性,它返回指定元素的子元素NodeList节点集合,包含HTML节点、所有属性、文本节点。...document.getElementsByName():用于选择拥有name属性的HTML元素,比如form、img、frame、embed和object,返回一个NodeList格式的对象,不会实时反映元素的变化...NodeList对象不是动态集合,所以元素节点的变化无法实时反映在返回结果中。...元素添加到父元素ct内的末尾位置 ct2.appendChild(newcontent); //将newcontent文本内容添加到其父元素ct2内
HTML集合(HTML Collection)是元素节点的集合由 'getElementsByClassName' 和 'getElementsByTagName' 返回包含所有类型的节点:元素节点、文本节点等节点列表...(NodeList)包含所有类型的节点:元素节点、文本节点等由 'querySelectorAll' 返回通过 querySelectorAll 返回的节点列表是静态的。...html> 容易,伙计 容易的诱饵 容易迟到html>const...(document.createElement('p'))console.log(pEls) // {p, p , p}所以它没有被添加到节点列表中,但如果我们使用 getElementsByTagName...做同样的事情,它将被反映出来,我们将看到第四个 被添加到了 HTML 集合中。
在 HTML 页面中,文档元素始终是html>元素。在 XML 文档中,则没有这样预定义的元素,任何元素都可能成为文档元素。...():接收获取元素的标签名,返回包含零个或多个元素的 NodeList 在 HTML 文档中,返回一个HTMLCollection 对象(实时对象) 要取得文档中的所有元素,可以给 getElementsByTagName...()或 replaceChild() 元素被添加到文档树之后,浏览器会立即将其渲染出来 元素后代 元素可以拥有任意多个子元素和后代元素,因为元素本身也可以是其他元素的子元素。...DOM将文档片段定义为“轻量级”文档,能够包含和操作节点,却没有完整文档那样额外的消耗。不能直接把文档片段添加到文档。相反,文档片段的作用是充当其他要被添加到文档的节点的仓库。...,则该节点会从文档树中移除,不会再被浏览器渲染 可以通过 appendChild()或 insertBefore()方法将文档片段的内容添加到文档 在把文档片段作为参数传给这些方法时,文档片段的所有子节点会被添加到文档中相应的位置
一、节点层次 在HTML页面中,文档元素始终都是元素。 1. Node类型 JavaScript中的所有节点类型都继承自Node类型,因此所有节点类型都共享着相同的基本属性和方法。...示例:将blog作为content的第一个子元素,将company作为content的最后一个子元素 李刚 http://blog.csdn.net/ligang2585116 ptmind...Element类型 Element类型用于表现XML和HTML元素。可以通过nodeName或tagName属性获取元素的标签名。...动态脚本 在元素添加到页面之前,是不会下载外部文件的。...动态样式 同动态加载脚本类似,添加到页面之后才会加载资源。
,增加到头部 //将data元素放入到类中 NodeList node=new NodeList(data); NodeList cur=this.head...; //将现在的cur.index的地址指向node cur.next=node; } private NodeList searchPre(int index...=null){ //接收保留cur.next的节点方便后续使用 NodeList curNext=cur.next; //将cur...,增加到头部 //将data元素放入到类中 NodeList node=new NodeList(data); if(this.head==null){...=null){ //接收保留cur.next的节点方便后续使用 NodeList curNext=cur.next; //将cur
DOM可以将任何HTML或XML文档描绘成一个由多层节点构成的结构。 节点之间的关系构成了层次,而所有页面标记则表现为一个以特定节点为根节点的树形结构。... html> 将这个HTML文档表示为一个层次结构,如下图 方框中黑体字代表节点类型。...文档节点(图中的 Document)是每个文档的根节点, 这个例子中,它只有一个子节点,即 html>元素,我们称之为文档元素。...文档元素是文档的最外层元素,文档中的其他所有元素都包含在文档元素中。 每个文档只能有一个文档元素。 在HTML页面中,文档元素始终都是html>元素。...因此,这个节点副本就成为“孤儿”,除非通过 appendChild(), insertBefore()或replaceChild()将它添加到文档中。
属性 Node.prototype.baseURI: 只读,返回一个表示base URL的DOMString,不同语言中的base URL的概念都不一样,在HTML中base URL表示协议和域名,以及一直到最后一个...Node.prototype.childNodes: 只读,返回一个包含了该节点所有子节点的实时的NodeList,NodeList是动态变化的,如果该节点的子节点发生了变化,NodeList对象就会自动更新...如果当前节点没有父节点或者说父节点不是一个元素Element, 这个属性返回null。...方法 Node.prototype.appendChild(): 将指定的childNode参数作为最后一个子节点添加到当前节点,如果参数引用了DOM树上的现有节点,则节点将从当前位置分离,并附加到新位置...Node.prototype.lookupNamespaceURI(): 接受一个前缀,并返回前缀所对应节点命名空间URI,如果URI不存在则返回null,传入null作为prefix参数将返回默认命名空间
Dom解析是将xml文件全部载入,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件 根据 DOM,XML 文档中的每个成分都是一个节点。...4.节点列表类NodeList NodeList代表了一个包含一个或者多个Node的列表,根据操作可以将其简化的看做为数组 ?...title = doc.createElement("title"); //创建名称为 香香 的文本节点并作为子节点添加到name元素中 title.appendChild...(doc.createTextNode("C语言")); //将name子元素添加到book中 book.appendChild(title);...作为子元素添加到树的根节点bookstore bookstore.appendChild(book); //将内存中的文档通过文件流生成insertbookstore.xml
> DOM 解析模型,将文档加载到 内存,形成一个树形结构 html> 就是根节点,每个标签会成为一个元素节点、标签的属性成为属性节点,标签内部的文本内容成为文本节点 注意:属性节点,它不属于DOM树形结构...: document.getElementById():通过id属性检索,获得Node节点(Element元素) document.getElementsByName 通过name 属性检索 ,获得NodeList...document.getElementsByTagName 通过标签元素名称 获得NodeList 其中NodeList可以作为数组进行操作 Demo:在每一个h1标签后追加itcast <script...;i++){ // varh1 = nodeList[i]; varh1 = nodeList.item(i); alert(h1.innerHTML); h1.innerHTML += "itcast...,去操作里面的文本内容 innerHTML (HTML页面内所有元素,一定是HTML 元素,innerHTML 是所有HTML元素通用属性 ) XML 取得一个元素内部文本内容 element.firstChild.nodeValue
1 XML介绍和解析方式 「XML解析介绍」 XML是标记型文档,js 使用 dom 解析标记型文档是根据 html 的层级结构,在内存中分配一个属性结构,把 html 的标签,属性和文本都封装成...--------------------------------------------------------"); // 4、解析 NodeList...2.5 新增节点 「步骤」 1、创建position_level元素 2、创建position_level的文本 3、把文本添加到position_level 4、把 position_level 添加到...position_level的文本 Text pLevelText = document.createTextNode( "三级" ); // 把文本添加到...position_level pLevel.appendChild(pLevelText); // 把 position_level 添加到 索引为1的
values(): 和keys()类似,返回一个iterator用于遍历NodeList的value,即html元素: var divs = document.querySelectorAll('div...HTMLCollection和NodeList一样包含了查询得到的html元素,length属性和item方法,但没有NodeList的entries, forEach, keys, values这四个方法...我们知道DOM节点(node)不光包含HTML元素,还包含text node(字符节点)和comment(注释),既然HTMLCollection只包含HTML元素,那NodeList是不是会包含所有类型的...至此,我们对NodeList和HTMLCollection应该有一个比较全面的认识,总结一下就是HTMLCollection是比较早期的模型,只能包含HTML元素,早期就有的接口如document.getElementsByClassName...NodeList是比较新的模型,相比HTMLCollection更加完善,不光有HTML元素,还有text节点和comment。
前言 我们平常说的查找元素 和 节点到底有什么区别?为什么有时候返回HTMLCollection ,有时候返回NodeList? HTMLCollection 和 NodeList 的区别又是什么?...节点与元素 根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点: 整个文档是一个文档节点 每个 HTML 元素是元素节点 HTML 元素内的文本是文本节点 每个 HTML 属性是属性节点...注释是注释节点 以下示例 Hello 每个 HTML 元素是元素节点,所以NodeList和HTMLCollection。 HTMLCollection 是表示 HTML 元素的集合。...区别 HTMLCollection 是表示 HTML 元素的集合,元素也是节点的一种,也就是元素节点,NodeList 是表示节点的集合 我们可以理解为 HTMLCollection 是 Nodelist
简介 ---- HTML5向Web API新引入了document.querySelector以及document.querySelectorAll两个方法用来更方便地从DOM选取元素,功能类似于jQuery...querySelector 该方法返回满足条件的单个元素。...该方法返回所有满足条件的元素,结果是个nodeList集合。...elements = document.querySelectorAll('div.foo');//返回所有带foo类样式的div 但需要注意的是返回的nodeList集合中的元素是非实时(no-live...container.appendChild(document.createElement('div')); //这个元素不但添加到页面了,这里的变量container也自动更新了 console.log
对象 : https://developer.mozilla.org/zh-CN/docs/Web/API/NodeList 在之前的博客中 , 都是通过 ID、 标签名、类名 获取 HTML 网页中的...都定义了 querySelector 函数 , 分别从 HTML 文档 和 Element 元素 中查询 指定 符合 CSS 选择器 的 第一个 DOM 元素 , 只能获取一个 Element 元素 ;...1、querySelectorAll 函数简介 Document 和 Element 都定义了 querySelectorAll 函数 , 分别从 HTML 文档 和 Element 元素 中查询 所有...> 执行结果 : 三、NodeList 对象 1、NodeList 对象简介 在上述 querySelectorAll 函数 中 , 获取的符合 指定选择器 的 所有 DOM 元素 , 返回值的类型是..., 可使用 数组下标的方式进行访问 ; NodeList 对象 与 HTMLCollection 对象 的区别是 : HTMLCollection 对象会实时更新 , 如果其中的 DOM 元素发生了改变