利用insertAdjacentHTML与Range实现DOM操作,可以允许我们把一串字符串快速的转变为DOM元素,并插入到文档中的具体位置。
function fn(){
//IE 和 Chrome
var str = '<div style="width:200px;height:100px;background-color:gray;">Content here</div>';
var b = document.getElementById("b");
//b.insertAdjacentHTML('BeforeBegin',str);//把str元素插入在b之前
//b.insertAdjacentHTML('AfterBegin',str);//把str元素插入作为b的第一个子元素
//b.insertAdjacentHTML('BeforeEnd',str);//把str元素插入作为b的最后一个子元素
b.insertAdjacentHTML('AfterEnd',str);//把str元素插入在b之后
}
function fn2(){
//Firefox
var str = '<div style="width:200px;height:100px;background-color:gray;">Content here</div>';
var b = document.getElementById("b");
var range = document.createRange();
frag = range.createContextualFragment(str);
//BeforeBegin
//range.setStartBefore(b);
//b.parentNode.insertBefore(frag, b);
//afterbegin
//range.setStartBefore(b.firstChild);
// b.insertBefore(frag, b.firstChild);
//beforeend
range.setStartAfter(b.lastChild);
b.appendChild(frag);
//AfterEnd
//range.setStartAfter(b);
//b.parentNode.insertBefore(frag, b.nextSibling);
}
分享到:
相关推荐
在软件开发中,尤其是涉及到网页动态更新和DOM操作时,`insertAdjacentHTML`是一个非常实用的方法。这个方法允许开发者在指定的位置动态插入HTML内容,相比`innerHTML`和`innerText`,它提供了更多的灵活性。`...
10. **DOM2级和DOM3级扩展**:DOM2级引入了更多关于事件、样式和遍历的新接口,DOM3级增加了XML支持和更强大的查找功能。 这本书的源代码可能涵盖这些主题,并通过实例展示了如何将这些概念应用于实际项目。通过...
dom-insert-html HTML 字符串 DOM 插入方法。 使用方便的、对压缩器友好的方法... element {Element}: DOM 元素 string {String}:要插入的 HTML 字符串。 例子 var html = require ( 'dom-insert-html' ) ; var el =
使用insertAdjacentHTML以高效的方式将给定的字符串添加到DOM并返回新创建HTML元素。 在测试套件中对设置要声明HTML有用。安装npm install --save string-to-dom用法var stringToDom = require ( 'string-to-dom' )...
本文将详细介绍原生JavaScript实现DOM节点CRUD操作的知识点。 创建(Create)操作涉及通过编程方式向文档添加新的节点元素。基本步骤包括创建元素、设置元素的内容、以及将创建的元素添加到DOM树中的适当位置。例如...
1. 表格的DOM操作:在DOM(文档对象模型)中,表格是通过特定的标签如`<table>`, `<tr>`, `<td>`等来构建的。JavaScript可以操作这些标签,从而实现动态地修改表格结构的目的。例如,可以增加、删除或者替换行(tr)...
本文将总结介绍JavaScript中有关DOM节点操作的主要方法。 首先,DOM节点主要分为三种类型:元素节点、属性节点和文本节点。元素节点对应HTML中的标签,属性节点对应标签中的属性,而文本节点包含标签之间的文本信息...
4. **DOM操作**:使用JS的DOM API(如`document.getElementById`、`innerHTML`或`insertAdjacentHTML`)来动态创建和修改DOM元素。当用户切换不同级别时,清空当前级别的选项,然后基于新数据生成新的`<option>`元素...
本文将深入探讨 JavaScript 的一些常用操作,包括 DOM 操作、字符串处理、表单操作、定时器功能以及获取窗口尺寸的方法。 #### DOM(Document Object Model)操作 DOM 是用于表示和操作 HTML 或 XML 文档的一种...
我会抽空把IE专有的方法如:insertAdjacentHTML的速度也给测出来看看是否合适大量数据时IE下,不用innerHTML的速度。这里的主要测试不是指生成数据时的速度,指的是匹配速度 ,例如我这里的匹配速度我测的10000条...
一般情况下,我们都是用appendChild的方式,一行行、一格格地添加,操作起来很繁锁。能不能拼一串字符,就能直接加入到表格中呢? 下面的例子实现了这个功能,同样地,该例支持IE和firefox。该功能的实现意义重大,...
在脚本中要用到两个函数:insertAdjacentHTML和removeChild,而恰好这两个函数在Firefox下都不能正常使用。几乎花费了一天的时候,在网上搜索着解决的方法,还好被找到了,也让我大松一口气。 具体两个函数是这样的...
5. **DOM操作**:使用JavaScript操作DOM(Document Object Model),如`innerHTML`属性或`insertAdjacentHTML`方法,将新选项添加到下拉菜单中。 6. **错误处理**:为AJAX请求添加错误处理机制,当请求失败时,可以...
这涉及到DOM(文档对象模型)的遍历和操作,比如使用`querySelectorAll`或`getElementsByClassName`等方法来定位代码块,然后通过`insertAdjacentHTML`或`appendChild`等方法插入复制按钮。 3. **事件监听**:在每...
5. **优化性能**:为避免频繁的DOM操作影响性能,可以使用`createDocumentFragment`来批量处理DOM元素,然后再将其添加到页面上。 6. **数据加载**:在纯JavaScript实现中,数据可能预先存在于脚本中,或者通过异步...
这通常涉及到DOM操作,例如使用`innerHTML`属性或`insertAdjacentHTML()`方法来替换城市下拉框的内容。 4. **异步加载**:在实际应用中,为了优化用户体验,我们通常不会一次性加载所有省份和城市的数据,而是使用...
2. **JavaScript**:JavaScript是实现此功能的基础,用于处理用户交互、发送网络请求以及操作DOM元素。例如,可以使用`addEventListener`监听输入事件,`fetch`或`XMLHttpRequest`发送Ajax请求,以及`innerHTML`或`...
这通常通过操作DOM(Document Object Model)来实现,例如使用`innerHTML`属性或者`insertAdjacentHTML`方法。 8. **性能优化**:为了提高用户体验,可能需要对Ajax请求进行一些优化,例如设置合适的超时时间、使用...
5. **框架集成**:了解如何将这些高级DOM操作与React、Vue或Angular等前端框架结合使用。 通过深入学习这个课程,你将能够更好地驾驭JavaScript中的DOM操作,写出更高效、更健壮的代码,并具备扎实的测试基础,确保...