2-2 jQuery节点创建与属性的处理
本节编程练习不计算学习进度,请电脑登录imooc.com操作

jQuery节点创建与属性的处理

上一节介绍了通过JavaScript原生接口创建节点,在处理上是非常复杂与繁琐的。我们可以通过使用jQuery来简化了这个过程

创建元素节点

可以有几种方式,后面会慢慢接触。常见的就是直接把这个节点的结构给通过HTML标记字符串描述出来,通过$()函数处理,$("html结构")

$("<div></div>")

创建为本节点

与创建元素节点类似,可以直接把文本内容一并描述

$("<div>我是文本节点</div>")

创建为属性节点

与创建元素节点同样的方式

$("<div id='test' class='aaron'>我是文本节点</div>")

我们通过jQuery把上一届的代码改造一下,如右边代码所示

一条一句就搞定了,跟写HTML结构方式是一样的

$("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>")

这就是jQuery创建节点的方式,让我们保留HTML的结构书写方式,非常的简单、方便和灵活

任务

  1. <!DOCTYPE html>
  2. <html>
  3.  
  4. <head>
  5. <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  6. <title></title>
  7. <script src="https://www.imooc.com/static/lib/jquery/1.9.1/jquery.js"></script>
  8. <style>
  9. .left,
  10. .right {
  11. width: 300px;
  12. height: 120px;
  13. }
  14.  
  15. .left div,
  16. .right div {
  17. width: 100px;
  18. height: 90px;
  19. padding: 5px;
  20. margin: 5px;
  21. float: left;
  22. border: 1px solid #ccc;
  23. }
  24.  
  25. .left div {
  26. background: #bbffaa;
  27. }
  28.  
  29. .right div {
  30. background: yellow;
  31. }
  32. </style>
  33. </head>
  34.  
  35. <body>
  36. <h2>动态创建元素节点</h2>
  37. <button>点击通过jQuery动态创建元素节点</button>
  38. <script type="text/javascript">
  39. var $body = $('body');
  40. $body.on('click', function() {
  41. //通过jQuery生成div元素节点
  42. var div = $("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>")
  43. $body.append(div)
  44. })
  45.  
  46.  
  47.  
  48. // var body = document.querySelector('body');
  49.  
  50. // document.addEventListener('click',function(){
  51.  
  52. // //创建2个div元素
  53. // var rightdiv = document.createElement('div')
  54. // var rightaaron = document.createElement("div");
  55.  
  56. // //给2个div设置不同的属性
  57. // rightdiv.setAttribute('class', 'right')
  58. // rightaaron.className = 'aaron'
  59. // rightaaron.innerHTML = "动态创建DIV元素节点";
  60.  
  61. // //2个div合并成包含关系
  62. // rightdiv.appendChild(rightaaron)
  63.  
  64. // //绘制到页面body
  65. // body.appendChild(rightdiv)
  66.  
  67. // },false)
  68. </script>
  69. </body>
  70.  
  71. </html>
  72.  
下一节