创建元素:createElement、文本:createTextNode、注释节点:createComment;appendChild()、insertBefore()、创建属性节点

柔光的暖阳◎ 2023-10-11 10:03 160阅读 0赞

创建元素、文本、注释节点

  1. //创建元素节点
  2. const span = document.createElement('span');
  3. console.log(span);
  4. //创建文本节点
  5. const text = document.createTextNode('XYZ');
  6. console.log(text);
  7. //创建注释节点
  8. const comment = document.createComment('这是创建的注释节点');
  9. console.log(comment);

appendChild:插入的子节点是DOM文档树里面已经存在的节点的话,这个节点会被移动到用appendChild()插入的位置,而不会被复制,反之直接插入。

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <div>
  9. </div>
  10. </body>
  11. <script>
  12. const div = document.getElementsByTagName('div')[0];
  13. //创建一个文本节点,内容为:XYZ
  14. const text = document.createTextNode('XYZ');
  15. //插入到div里面
  16. div.appendChild(text)
  17. </script>
  18. </html>
  19. <!DOCTYPE html>
  20. <html lang="en">
  21. <head>
  22. <meta charset="UTF-8">
  23. <title>Title</title>
  24. </head>
  25. <body>
  26. <div></div>
  27. <span></span>
  28. </body>
  29. <script>
  30. /*
  31. 注意:
  32. 没有执行appendChild的时候body结构为:
  33. <body>
  34. <div></div>
  35. <span></span>
  36. </body>
  37. */
  38. const div = document.getElementsByTagName('div')[0];
  39. const span = document.getElementsByTagName('span')[0];
  40. div.appendChild(span)
  41. /*
  42. 注意:
  43. 执行appendChild过后的body结构为:
  44. <body>
  45. <div>
  46. <span></span>
  47. </div>
  48. </body>
  49. */
  50. </script>
  51. </html>

insertBefore() 方法在您指定的已有子节点之前插入新的子节点。

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>xyz</title>
  8. </head>
  9. <body>
  10. <div id="content" name="xyz">
  11. <span></span>
  12. <q></q>
  13. <em></em>
  14. <i></i>
  15. <strong></strong>
  16. </div>
  17. </body>
  18. <script>
  19. const content = document.getElementById("content");
  20. const strong = document.getElementsByTagName("strong")[0];
  21. const span = document.createElement("span");
  22. content.insertBefore(span, strong);
  23. content.insertBefore(span, strong);
  24. </script>
  25. </html>

创建属性节点document.createAttribute():

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>温故而知新</title>
  8. <style></style>
  9. </head>
  10. <body>
  11. <div class="test">
  12. <span></span>
  13. <br />
  14. <strong></strong>
  15. <a href=""></a>
  16. <i></i>
  17. </div>
  18. </body>
  19. <script>
  20. const newTest = document.getElementsByClassName("test")[0];
  21. const cla = document.createAttribute("id");//创建属性节点
  22. cla.nodeValue = "xyz";//设置属性节点的值
  23. newTest.setAttributeNode(cla)//将创建的属性节点放到想放的节点处
  24. </script>
  25. </html>

result:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0pFRkZfbHV5aWR1YW4_size_16_color_FFFFFF_t_70

发表评论

表情:
评论列表 (有 0 条评论,160人围观)

还没有评论,来说两句吧...

相关阅读