DDR爱好者之家 Design By 杰米
本文实例讲述了原生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操作DOM技巧总结》、《JavaScript页面元素操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]