博主信息
博文 19
粉丝 1
评论 0
访问量 16416
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Dom元素增加删除,修改,查找
▽空城旧梦
原创
825人浏览过

通过CSS选择器获取元素

  1. <ul class="course">
  2. <li class="item">item1</li>
  3. <li class="item">item2</li>
  4. <li class="item">item3</li>
  5. </ul>
  6. let ul = document.querySelector(".course");//获取到ul元素
  7. let liList = document.querySelector(".course .item");//获取item类第一个元素
  8. //当需要获取到所有相同属性的元素集合时,可以使用querySelectorAll
  9. let liList = document.querySelectorAll(".course > .item");//获取所有li
  10. //里面元素可以使用【下标】来提取
  11. console.log(liList[0]); //第一个,等同于querySelector();
  12. //拿到元素集合后,可以通过foreach来遍历
  13. liList.foreach((item,index,Array){
  14. console.log(item,index);//index代表下标索引,item代表元素
  15. });
  16. //也可以将liList 转化为数组,下面提供两种转化方法
  17. let lisArr = Array.from(liList);
  18. let lisArr = [...liList];

增加元素

  1. //需要增加的元素li
  2. const li = document.createElement("li");
  3. //parent.appendChild(li); //将li元素添加到html页面中,最后位置
  4. //想将li添加到ul中,有三种方法:
  5. //方法1:子元素扩充,li成为ul的最后一个子元素
  6. ul.appendChild(li);
  7. //方法2:定义新增元素的html代码语句,用insertAdjacentHTML方法,可以指定位置
  8. let addLiHtml = "<li style='color:red'>新增元素li</li>";
  9. //insertAdjacentHTML方法的第一个参数:
  10. // beforeBegin:开始之前,即已经不属于ul了
  11. // afterBegin:开始之后,此时新增li变成ul的第一个子元素
  12. // beforeEnd:结束之前,此时新增li变成ul的最后一个子元素
  13. // afterEnd:结束之后,即已经不属于ul了
  14. ul.insertAdjacentHTML("beforeEnd",addLiHtml);
  15. //方法3:增加元素,可以指定位置
  16. ul.insertAdjacentElement("afterBegin",li);
  17. //需要大量添加元素时,如果一个一个加,页面就会频繁刷新,此时可以考虑用文档片断完成
  18. const frag = new DocumentFragment();
  19. //const frag = document.createDocumentFragment(); 这种方法创建片断也可以
  20. for(let i=0;i<5;i++){
  21. const li = document.createElement("li");
  22. li.textContent = 'hello' + (i+1);
  23. frag.appendChild(li);
  24. }
  25. //将片断挂到ul后面,成为ul的子元素
  26. ul.appendChild(flag);

替换元素

  1. const h3 = document.createElement("h3");
  2. h3.innerHTML = "晚上好";
  3. //先查找被替换的旧元素,然后用replaceWith()将,新元素替换旧元素
  4. document.querySelector('li:nth-of-type(3)').replaceWith(h3);、
  5. //如果要在父元素上进行操作replaceChild(新元素,旧元素)
  6. ul.replaceChild(h3,document.querySelector("li:nth-of-type(3)"));

删除元素

  1. //在父元素进行操作,删除子元素
  2. ul.removeChild(document.querySelector("#list h3"));

获取元素

  1. //获取所有子元素
  2. console.log(ul.children);
  3. //获取所有子元素的数量
  4. console.log(ul.children.lenght);
  5. console.log(ul.childElementCount);
  6. //获取第一个子元素
  7. console.log(ul.firstElementChild);
  8. //获取最后一个子元素
  9. console.log(ul.lastElementChild);
  10. //找前一个兄弟,先定位
  11. const nine = document.querySelector("li:nth-of-type(2)");
  12. //从定位出发,找前一个
  13. console.log(nine.previousElementSibling.innerHTML);
  14. //从定位出发,找后一个
  15. console.log(nine.nextElementSibling.innerHTML);
批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学