原生js实现针对Dom节点的CRUD操作示例


Posted in Javascript onAugust 26, 2019

本文实例讲述了原生js实现针对Dom节点的CRUD操作。分享给大家供大家参考,具体如下:

知识点,依然会遗忘。我在思考到底是什么原因。想到研究生考试准备的那段岁月,想到知识体系的建立,知识体系分为正向知识体系和逆向知识体系;正向知识体系可以理解为教科书目录,逆向知识体系可以理解考试真题。

按照知识体系建设这个思路,追求长久的深刻的记忆。决定建立正向知识体系。本文系正向知识体系的第一篇。

原生js操作dom节点:所谓的CRUD,代表create,read,update,del;也就是创建,读取,更新和删除。dom提供了api用于创建节点常用有

var div=document.createElement("div");
var p=document.createElement("p");
div.innerHTML="这是插入内容";
var text=document.createTextNode("这是文本内容");
var img=new Image();

创建元素、文本内容和图片。创建要和插入一起使用,所以

dom1.appendChild(div);
dom1.insertBefore(div,dom1.querySelector("p")); 
function inertAfter(newElement,targetElement){
   var parent=targetElement.parentNode;
   if (parent.lastChild==targetElement) {
     parent.appendChild(newElement);
   }else{
     parent.inertBefore(newElement,targetElement.nestSibling);
   }
}
document.getElementById('id名称').preappend(div);//直接插入到父元素第一个位置
document.getElementById('id名称').append(div);//直接插入到父元素最后位置
//还有另一个api
dom1.insertAdjacentHTML("afterBegin","<h1> 在文本前容器内插入内容1</h1>"); 
dom1.insertAdjacentHTML("beforeEnd","<h2> 在文本后容器内插入内容2</h2>"); 
dom1.insertAdjacentHTML("beforeBegin","<h4> 在文本前容器外插入内容4</h1>"); 
dom1.insertAdjacentHTML("afterEnd","<h5> 在文本后容器外插入内容5</h2>");

读取也就是选择器的功能实现

//直接选择器
var dom1=document.getElementById("dom1");
var dom1=document.querySelector("#dom1");
var matches = document.querySelectorAll("div.note, div.alert");
var div=document.getElementsByClassName(".div");
var div=document.getElementsByTagName("div");
//节点关系选择器
var divC=div.innerHTML;//内部
var divC=div.outerHTML;//整个节点
var divS=div.children;//子节点集合
var divS=div.firstChild;//第一个子节点,如果有空格返回#text
var divS=div.lastChild;//最后一个子节点,如果有空格返回#text
var divS=div.nextSibling;//下一个节点,如果有空格返回#text
var divS=div.prvSibling;//前一个节点,如果有空格返回#text
var divS=div.parentNode;//父节点
//节点集合
var form=document.forms[0];//表单集合
var img=document.images[0];//图片集合
var img=document.links[0];//所有带连接的a节点

然后是更新,我理解的是替换,常用实现

parent.replaceChild(div,dom1.querySelector("p"));
dom1.innerHTML="hhh";
dom1.innerText="999";

最后是删除的实现

parent.removeChild(dom1.querySelector("p"));
dom1.innerHTML="";
dom1.innerText="";

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
offsetParent 算法分析
Apr 05 Javascript
你必须知道的JavaScript 中字符串连接的性能的一些问题
May 07 Javascript
javascript中innerText和innerHTML属性用法实例分析
May 13 Javascript
Jquery实现弹性滑块滑动选择数值插件
Aug 08 Javascript
深入理解JavaScript中的块级作用域、私有变量与模块模式
Oct 31 Javascript
d3.js实现立体柱图的方法详解
Apr 28 Javascript
Vue开发中整合axios的文件整理
Apr 29 Javascript
Angularjs过滤器实现动态搜索与排序功能示例
Dec 13 Javascript
微信小程序实现自定义加载图标功能
Jul 19 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
Dec 05 jQuery
Javascript之高级数组API的使用实例
Mar 08 Javascript
vue修改Element的el-table样式的4种方法
Sep 17 Javascript
Moment.js实现多个同时倒计时
Aug 26 #Javascript
vue获取验证码倒计时组件
Aug 26 #Javascript
seajs和requirejs模块化简单案例分析
Aug 26 #Javascript
JavaScript实现身份证验证代码实例
Aug 26 #Javascript
基于vue、react实现倒计时效果
Aug 26 #Javascript
tweenjs缓动算法的使用实例分析
Aug 26 #Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
Aug 26 #Javascript
You might like
简单易用的计数器(数据库)
2006/10/09 PHP
php页面防重复提交方法总结
2013/11/25 PHP
基于ThinkPHP实现批量删除
2015/12/18 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
PHP的PDO事务与自动提交
2019/01/24 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
Jquery中对数组的操作代码
2011/08/12 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
JavaScript生成SQL查询表单的方法
2015/08/13 Javascript
javascript瀑布流式图片懒加载实例
2020/06/28 Javascript
微信小程序 PHP后端form表单提交实例详解
2017/01/12 Javascript
分享一道关于闭包、bind和this的面试题
2017/02/20 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
vue-resource调用promise取数据方式详解
2017/07/21 Javascript
webpack项目使用eslint建立代码规范实现
2019/05/16 Javascript
js+canvas绘制图形验证码
2020/09/21 Javascript
在Django的视图中使用form对象的方法
2015/07/18 Python
python中获得当前目录和上级目录的实现方法
2017/10/12 Python
python实现简单登陆流程的方法
2018/04/22 Python
python实现移位加密和解密
2019/03/22 Python
python pygame实现方向键控制小球
2019/05/17 Python
python将字符串转换成json的方法小结
2019/07/09 Python
Python 用三行代码提取PDF表格数据
2019/10/13 Python
Python中使用filter过滤列表的一个小技巧分享
2020/05/02 Python
python爬虫中url管理器去重操作实例
2020/11/30 Python
Pycharm 如何一键加引号的方法步骤
2021/02/05 Python
HTML+CSS3 模仿Windows7 桌面效果
2010/06/17 HTML / CSS
意大利综合购物网站:Giordano Shop
2016/10/21 全球购物
Hoka One One法国官网:美国专业跑鞋品牌
2018/12/29 全球购物
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
最受欢迎的自我评价
2013/12/22 职场文书
诚信承诺书范文
2014/03/27 职场文书
群众路线教育实践活动自我剖析思想汇报
2014/10/04 职场文书
群众路线专项整治方案
2014/10/27 职场文书
MySQL的索引你了解吗
2022/03/13 MySQL