当前位置:   article > 正文

JavaScript第十讲:DOM编程(1):节点概念,如何获取元素节点,节点属性,样式练习题

JavaScript第十讲:DOM编程(1):节点概念,如何获取元素节点,节点属性,样式练习题

前言

上一节是本文的知识点讲解,有需要的码客们先看一下,本文是练习题

题目要求

编写一个HTML文档,展示DOM编程的基础知识,包括节点概念的理解、如何获取元素节点、节点属性的操作以及样式调整。要求文档中包含一个带有特定ID的div元素,以及一个按钮。当用户点击按钮时,应触发一系列DOM操作,包括修改div元素的文本内容、改变其背景色、添加class以及读写自定义的data-*属性。

源代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>DOM编程基础探索</title>
  6. <style>
  7. /* 初始样式 */
  8. #myDiv {
  9. width: 200px;
  10. height: 200px;
  11. background-color: lightgray;
  12. color: black;
  13. padding: 20px;
  14. text-align: center;
  15. font-size: 20px;
  16. }
  17. /* 新增的class样式 */
  18. .new-class {
  19. border: 2px solid red;
  20. }
  21. </style>
  22. </head>
  23. <body>
  24. <!-- 带有id的div元素 -->
  25. <div id="myDiv">我是一个可操作的div元素</div>
  26. <!-- 触发DOM操作的按钮 -->
  27. <button onclick="exploreDOM()">探索DOM</button>
  28. <script>
  29. function exploreDOM() {
  30. // 获取元素节点
  31. var divNode = document.getElementById('myDiv');
  32. console.log('获取到的元素节点:', divNode);
  33. // 修改节点属性:文本内容
  34. divNode.textContent = 'DOM编程基础探索';
  35. console.log('修改后的文本内容:', divNode.textContent);
  36. // 修改节点样式:背景色
  37. divNode.style.backgroundColor = 'lightblue';
  38. console.log('修改后的背景色:', divNode.style.backgroundColor);
  39. // 修改节点属性:添加class
  40. divNode.classList.add('new-class');
  41. console.log('添加的class:', divNode.className);
  42. // 读取节点属性:自定义data-*属性(假设不存在)
  43. var customData = divNode.getAttribute('data-custom');
  44. if (customData) {
  45. console.log('自定义data-*属性值:', customData);
  46. } else {
  47. console.log('未找到自定义data-*属性');
  48. }
  49. // 设置节点属性:添加自定义data-*属性
  50. divNode.setAttribute('data-custom', 'helloDOM');
  51. console.log('已添加的自定义data-*属性:', divNode.getAttribute('data-custom'));
  52. }
  53. </script>
  54. </body>
  55. </html>

在这个HTML文档中,我们首先定义了一个带有ID myDivdiv元素,并为其指定了初始样式。然后,我们添加了一个按钮,当按钮被点击时,会触发exploreDOM函数。这个函数执行了一系列DOM操作,包括获取元素节点、修改文本内容、改变背景色、添加class以及读写自定义的data-*属性。通过控制台输出,我们可以验证每一步操作的结果。

今天的JS学习就到这里,我是星途,愿我们共同进步。

respect!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/701026
推荐阅读
相关标签
  

闽ICP备14008679号