含义:

insertAdjacentHTML() 将指定的文本解析为HTML或XML,并将结果节点插入到DOM树中的指定位置。它不会重新解析它正在使用的元素,因此它不会破坏元素内的现有元素。这避免了额外的序列化步骤,使其比直接innerHTML操作更快。
 
用法:

 1 element.insertAdjacentHTML(position, text); 

名词解释:

    1.element:目标元素;

    2.insert:插入;

    3.Adjacent: 与…毗连的; 邻近的;

    4.HTML:大家用的html布局;

    

    text:一段字符串,此方法会将其解析为节点对象,然后插入目标元素指定位置;

    positon:规定被插入的位置的关键字;

position有四个参数选项:

    1.beforebegin:规定在目标元素的外部开始位置插入。

    2.afterbegin:规定在目标元素的内部开始位置插入。

    3.beforeend:规定在目标元素的内部结束位置插入。

    4.afterend:规定在目标元素的外部结束位置插入。

弄个图会更清晰点:

重点注意:该方法会将指定的文本解析为HTML或XML(也就是说标签会被解析)

实例:

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
#bluerec {
width:200px;
height:150px;
background-color:blue;
}
p {
width:100px;
height:80px;
background-color:red;
}
</style>
</head>
<body>
<br />
<hr />
<div id = "bluerec"></div>
<br />
<input id = "s" type = "button" value = "点击插入"/> <script type="text/javascript">
window.onload = function(){
var blueRec = document.getElementById("bluerec");
var btn = document.getElementsByTagName("input")[0];
var str = "<p></p>";
btn.onclick = function(){
blueRec.insertAdjacentHTML("beforebegin",str);
}
}
</script>
</body>
</html>

实际效果:

对上述代码的解析:

    1.初始状态:一条分割线、蓝色div、按钮

    2.点击按钮后:在蓝色div上插入了p标签,取代了分割线的位置,分割线位置上移

使用场景:需要在原有元素周围追加元素时,比起innerHTML效率更高,兼容性更好

JavaScript insertAdjacentHTML()的使用的更多相关文章

  1. [译]JavaScript insertAdjacentHTML

    原文地址:http://davidwalsh.name/insertadjacenthtml-beforeend 该死的DOM慢的很.随着我们的网站动态交互和Ajax操作越来越多,我们需要寻找一种高性 ...

  2. javascript DOM操作中的insertAdjacentHTML方法

    插入HTML内容与文本内容以前用的是innerHTML与innerText方法,今天看到insertAdjacentHTML和 insertAdjacentText两个API,特地学习一下: inse ...

  3. 全栈JavaScript之路( 二十 )HTML5 插入 html标记 ( 二 )insertAdjacentHTML

    insertAdjacentHTML(),  这种方法也是在IE中最早出现的.如今已纳入html5规范,它接受两个參数,一个是下列的标记之中的一个,一个是要写入的 html 代码文本. beforeb ...

  4. 使用insertBefore实现insertAdjacentHTML()

    Element.insertAdjacentHTML()方法由IE引入,并在HTML5中标准化,它将任意的HTML标记字符串插入到指定的元素“相邻”的位置. insertAdjacentHTML()有 ...

  5. 利用模板将HTML从JavaScript中抽离

    利用模板将HTML从JavaScript中抽离 一.当需要注入大段的HTML标签到页面中时,应该使用服务器渲染(从服务器加载HTML标签) 该方法将模板放置于服务器中使用XMLHttpRequest对 ...

  6. JavaScript进阶之DOM

    文档对象模型DOM 文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式.我们最 ...

  7. 15-前端开发之JavaScript

    什么是 JavaScript ? JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出 ...

  8. 你想的到想不到的 javascript 应用小技巧方法

    javascript 在前端应用体验小技巧继续积累. 事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElemen ...

  9. javascript小技巧

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

随机推荐

  1. Spark程序打包

    背景: spark程序,使用scala语言开发.整个项目中包含多个子模块,依赖包文件使用maven来管理. 打包: 方法一:使用artifacts来 选择模块,选择对应的主函数: 点ok保存. 由于s ...

  2. SDN实验---OVS了解(转载)

    转载自:https://opengers.github.io/openstack/openstack-base-use-openvswitch/ 一:Open vSwitch介绍 (一)介绍 在过去, ...

  3. [转] 2017年PHP开发者大会 鸟哥 (惠新宸@Laruence)精彩问答

    php7.1那个诡异的函数返回类型限定是如何考虑的? 鸟哥:没什么特别考虑,投票投出来的.首先说明一点,我投的是反对票.包括php的命名空间反斜杠我也是非常反对的,但可能由于我并没有对这方面太深的认识 ...

  4. shell中 >/dev/null 2>&1是什么意思

    原文地址:http://juke.outofmemory.cn/entry/295292 我们经常能在 shell 脚本中发现 >/dev/null 2>&1 这样的语句.以前的我 ...

  5. Mac AXURE9 汉化

    1.下载汉化文件 https://pan.baidu.com/s/1qE0ZSvf210WLMfvi8RlMpg 2.把lang文件放在Resources文件夹下 3.重新打开Axure就ok了

  6. centos7安装rsync及两台机器进行文件同步

    安装及配置 yum -y install rsync #启动rsync服务 systemctl start rsyncd.service systemctl enable rsyncd.service ...

  7. Mysql update多表联合更新

    下面我建两个表,并执行一系列sql语句,仔细观察sql执行后表中数据的变化,很容易就能理解多表联合更新的用法 student表                                      ...

  8. GitHub: Oracle Database on Docker 为测试 改天试试

    Oracle Database on Docker https://github.com/oracle/docker-images/tree/master/OracleDatabase/SingleI ...

  9. golang笔记之DOS篇

    Dos的常用命令 dos的基本介绍     Dos: Disk Operating System 磁盘操作系统  ,简单说一下Windows下的目录 2. dos的基本操作原理   目录的操作: md ...

  10. Python入门 .变量 常量 基础数据类型 用户输入 流程控制语句 小练习题

    # 2.name = input(“>>>”)通过代码来验证name变量是什么数据类型?--str name = input(">>>") pr ...