JS 封装inserAfter()方法
2020-07-14 05:52
309 查看
封装insertAfter()方法
在JS中,系统提供了Node.insertBefore(a, b)方法,在参考节点b之前插入一个拥有指定父节点Node的子节点a。
我们可以封装一个类似insertBefore()的函数 inertAfter(a, b),实现在参考节点b之后插入一个拥有指定父节点Node的子节点a。
思路:获取参考节点afterNode的下一个元素节点,利用insertBefore操作完成相应功能
//在原型上进行封装 Element.prototype.insertAfter = function(targetNode, afterNode){ // 获取afterNode节点的下一个元素节点 var beforeNode = afterNode.nextElementSibling; // 处理afterNode为最后一个子元素的情况 if(beforeNode == null){ this.appendChild(targetNode); }else{ this.insertBefore(targetNode, beforeNode); } }
eg:若HTML代码如下所示
<div> <p></P> <b></b> <i></i> </div>
若要在后插入标签,先获取父节点和参考节点;然后创建子节点strong。
var div = document.getElementsByTagName('div')[0]; var b = doucment.getElementsByTagName('b')[0]; var strong = document.createElement('strong'); div.insertAfter(strong, b); console.log(div);
控制台输出如下
<div> <p></P> <b></b> <strong></strong> <i></i> </div>
相关文章推荐
- JS实现继承的几种方法
- 个人笔记 js 04 把子页面把参数传递到父页面的方法
- Js事件详解(1)事件类型及几种添加事件处理程序的方法
- node.js中的buffer.slice方法使用说明
- 【CSS进阶】原生JS getComputedStyle等方法解析
- js 事件绑定的方法
- js跨域问题浅析及解决方法优缺点对比
- node.js中的console.assert方法使用说明
- jsp Iframe框架下,跨框架 访问 js 方法
- (转)js数组与字符串的相互转换方法
- js 数组最基础实用的方法总结
- EXT.NET_X.Js.Call方法
- 关于js操作word和excel的若干方法汇总
- JS - IE or not:判断是否为IE浏览器方法
- js获取元素坐标方法
- js继承--apply方法
- JS调用CS里的方法:PageMethods
- node.js中的querystring.unescape方法使用说明
- 原生 JS DOM对象 & JQuery对象 常用属性及方法对比(图)
- ajax跨域请求js拒绝访问的解决方法