JavaWeb——JQuery之DOM操作应用及实践案例总结(DOM内容操作、DOM属性操作、CRUD操作)

举报
Winter_world 发表于 2021/09/29 00:19:18 2021/09/29
【摘要】 目录 1 DOM内容操作 2 DOM属性操作 2.1 通用属性操作 2.2 对class属性操作 3 CRUD操作 选择器作用就是找到元素对象,找到后进行具体的操作就是DOM操作。 1 DOM内容操作 内容操作的三个方法: 1)html():获取/设置元素的标签体内容,如<a><font>内容...

目录

1 DOM内容操作

2 DOM属性操作

2.1 通用属性操作

2.2 对class属性操作

3 CRUD操作


选择器作用就是找到元素对象,找到后进行具体的操作就是DOM操作。

1 DOM内容操作

内容操作的三个方法:

  • 1)html():获取/设置元素的标签体内容,如<a><font>内容</font></a>,获取a标签中的内容就是<font>内容</font>;
  • 2)text():获取/设置元素的标签体纯文本内容,如上,获取a标签中的“内容”两个字;
  • 3)val():获取/设置元素的value属性值。

【案例练习】:应用以上方法获取或设置内容


   
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title></title>
  6. <script src="../js/jquery-3.3.1.min.js"></script>
  7. <script>
  8. $(function () {
  9. // 获取myinput 的value值
  10. // var value = $("#myinput").val();
  11. // alert(value);
  12. // $("#myinput").val("李四");
  13. // 获取mydiv的标签体内容
  14. // var html = $("#mydiv").html();
  15. // alert(html);
  16. // $("#mydiv").html("<p>aaaa</p>");
  17. // 获取mydiv文本内容
  18. // var text = $("#mydiv").text();
  19. // alert(text);
  20. $("#mydiv").text("bbb");
  21. });
  22. </script>
  23. </head>
  24. <body>
  25. <input id="myinput" type="text" name="username" value="张三" /><br />
  26. <div id="mydiv"><p><a href="#">标题标签</a></p></div>
  27. </body>
  28. </html>

2 DOM属性操作

2.1 通用属性操作

  • 1)attr():获取/设置元素的属性值
  • 2)removeAttr():删除属性
  • 3)prop():获取/设置元素的属性值
  • 4)removeProp():删除属性

【注意】:prop和attr的区别,如果操作的是元素的固有属性(非自定义的),建议使用prop;若是自定义属性,建议用attr。

【案例练习】:应用以上方法获取或设置属性


   
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>获取属性</title>
  5. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  6. <script src="../js/jquery-3.3.1.min.js"></script>
  7. <script type="text/javascript">
  8. $(function () {
  9. //获取北京节点的name属性值
  10. var name = $("#bj").attr("name");
  11. alert(name);
  12. //设置北京节点的name属性的值为dabeijing
  13. $("#bj").attr("name","dabeijing");
  14. //新增北京节点的discription属性 属性值是didu
  15. $("#bj").attr("discription","didu");
  16. //删除北京节点的name属性并检验name属性是否存在
  17. $("#bj").removeAttr("name");
  18. //获得hobby的的选中状态
  19. var checked = $("#hobby").prop("checked");
  20. alert(checked);
  21. });
  22. </script>
  23. </head>
  24. <body>
  25. <ul>
  26. <li id="bj" name="beijing" xxx="yyy">北京</li>
  27. <li id="tj" name="tianjin">天津</li>
  28. </ul>
  29. <input type="checkbox" id="hobby"/>
  30. </body>
  31. </html>

2.2 对class属性操作

  • 1)addClass():添加class属性值;
  • 2)removeClass():删除class属性值;
  • 3)toggleClass():切换class属性,如toggleClass("one"),若元素对象上存在class="one",则将属性值one删除,否则添加;

【案例练习】:应用以上方法获取或设置属性


   
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>样式操作</title>
  5. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  6. <script src="../js/jquery-3.3.1.min.js"></script>
  7. <style type="text/css">
  8. .one{
  9. width: 200px;
  10. height: 140px;
  11. margin: 20px;
  12. background: red;
  13. border: #000 1px solid;
  14. float:left;
  15. font-size: 17px;
  16. font-family:Roman;
  17. }
  18. div,span{
  19. width: 140px;
  20. height: 140px;
  21. margin: 20px;
  22. background: #9999CC;
  23. border: #000 1px solid;
  24. float:left;
  25. font-size: 17px;
  26. font-family:Roman;
  27. }
  28. div .mini{
  29. width: 40px;
  30. height: 40px;
  31. background: #CC66FF;
  32. border: #000 1px solid;
  33. font-size: 12px;
  34. font-family:Roman;
  35. }
  36. div .mini01{
  37. width: 40px;
  38. height: 40px;
  39. background: #CC66FF;
  40. border: #000 1px solid;
  41. font-size: 12px;
  42. font-family:Roman;
  43. }
  44. /*待用的样式*/
  45. .second{
  46. width: 300px;
  47. height: 340px;
  48. margin: 20px;
  49. background: yellow;
  50. border: pink 3px dotted;
  51. float:left;
  52. font-size: 22px;
  53. font-family:Roman;
  54. }
  55. </style>
  56. <script type="text/javascript">
  57. $(function () {
  58. //采用属性增加样式(改变id=one的样式)
  59. $("#b1").click(function () {
  60. $("#one").prop("class","second");
  61. });
  62. //<input type="button" value=" addClass" id="b2"/>
  63. $("#b2").click(function () {
  64. $("#one").addClass("second");
  65. });
  66. //<input type="button" value="removeClass" id="b3"/>
  67. $("#b3").click(function () {
  68. $("#one").removeClass("second");
  69. });
  70. //<input type="button" value=" 切换样式" id="b4"/>
  71. $("#b4").click(function () {
  72. $("#one").toggleClass("second");
  73. });
  74. //通过css()获得id为one背景颜色
  75. $("#b5").click(function () {
  76. var backgroundColor = $("#one").css("backgroundColor");
  77. alert(backgroundColor);
  78. });
  79. //通过css()设置id为one背景颜色为绿色
  80. $("#b6").click(function () {
  81. $("#one").css("backgroundColor","green");
  82. });
  83. });
  84. </script>
  85. </head>
  86. <body>
  87. <input type="button" value="保存" class="mini" name="ok" class="mini" />
  88. <input type="button" value="采用属性增加样式(改变id=one的样式)" id="b1"/>
  89. <input type="button" value=" addClass" id="b2"/>
  90. <input type="button" value="removeClass" id="b3"/>
  91. <input type="button" value=" 切换样式" id="b4"/>
  92. <input type="button" value=" 通过css()获得id为one背景颜色" id="b5"/>
  93. <input type="button" value=" 通过css()设置id为one背景颜色为绿色" id="b6"/>
  94. <h1>你好</h1>
  95. <h2>world</h2>
  96. <div id="one">
  97. id为one
  98. </div>
  99. <div id="two" class="mini" >
  100. id为two class是 mini
  101. <div class="mini" >class是 mini</div>
  102. </div>
  103. <div class="one" >
  104. class是 one
  105. <div class="mini" >class是 mini</div>
  106. <div class="mini" >class是 mini</div>
  107. </div>
  108. <div class="one" >
  109. class是 one
  110. <div class="mini01" >class是 mini01</div>
  111. <div class="mini" >class是 mini</div>
  112. </div>
  113. <span class="spanone"> span
  114. </span>
  115. </body>
  116. </html>

 

3 CRUD操作

  • 1)append():父元素将子元素追加到末尾,如A.append(B),将对象B添加到A的内部,且在末尾;
  • 2)prepend():父元素将子元素追加到开头,如A.append(B),将对象B添加到A的内部,且在开头;
  • 3)appendTo():如A.append(B),将对象A添加到B的内部,且在末尾;
  • 4)prependTo():如A.append(B),将对象A添加到B的内部,且在开头;
  • 5)after():添加元素到元素后边,如A.after(B),将对象B添加到A的后面,对象A和B是平级的;
  • 6)before():添加元素到元素前边,如A.before(B),将对象B添加到A的前面,对象A和B是平级的;
  • 7)insertAfter():如A.insertAfter(B),将对象B添加到A的后面,对象A和B是平级的;
  • 8)insertBefore():如A.insertBefore(B),将对象B添加到A的前面,对象A和B是平级的;
  • 9)remove():移除元素,如对象A.remove(),将对象删除掉;
  • 10)empty():清空元素的所有后代元素,如对象A.empty(),将对象的后代元素全部清空,保留当前对象以及其属性节点。

【案例练习】:应用以上方法练习


  
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>内部插入脚本</title>
  5. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  6. <script src="../js/jquery-3.3.1.min.js"></script>
  7. <script type="text/javascript">
  8. $(function () {
  9. //将反恐放置到city的后面
  10. $("#b1").click(function () {
  11. //append
  12. //$("#city").append($("#fk"));
  13. //appendTo
  14. $("#fk").appendTo($("#city"));
  15. });
  16. // 将反恐放置到city的最前面
  17. $("#b2").click(function () {
  18. //prepend
  19. //$("#city").prepend($("#fk"));
  20. //prependTo
  21. $("#fk").prependTo($("#city"));
  22. });
  23. // 将反恐插入到天津后面
  24. $("#b3").click(function () {
  25. //after
  26. //$("#tj").after($("#fk"));
  27. //insertAfter
  28. $("#fk").insertAfter($("#tj"));
  29. });
  30. // 将反恐插入到天津前面
  31. $("#b4").click(function () {
  32. //before
  33. //$("#tj").before($("#fk"));
  34. //insertBefore
  35. $("#fk").insertBefore($("#tj"));
  36. });
  37. $("#b5").click(function () {
  38. $("#bj").remove();
  39. });
  40. $("#b6").click(function () {
  41. $("#love").empty();
  42. });
  43. });
  44. </script>
  45. </head>
  46. <body>
  47. <input type="button" value="将反恐放置到city的后面" id="b1"/>
  48. <input type="button" value="将反恐放置到city的最前面" id="b2"/>
  49. <input type="button" value="将反恐插入到天津后面" id="b3"/>
  50. <input type="button" value="将反恐插入到天津前面" id="b4"/>
  51. <input type="button" value="删除li,id=bj的元素" id="b5"/>
  52. <input type="button" value="删除ul,id=love的所有后代节点" id="b6"/>
  53. <ul id="city">
  54. <li id="bj" name="beijing">北京</li>
  55. <li id="tj" name="tianjin">天津</li>
  56. <li id="cq" name="chongqing">重庆</li>
  57. </ul>
  58. <ul id="love">
  59. <li id="fk" name="fankong">反恐</li>
  60. <li id="xj" name="xingji">星际</li>
  61. </ul>
  62. </body>
  63. </html>

作于202008121105,已归档

———————————————————————————————————

本文为博主原创文章,转载请注明出处!

若本文对您有帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!

祝君升职加薪,鹏程万里!

文章来源: winter.blog.csdn.net,作者:Winter_world,版权归原作者所有,如需转载,请联系作者。

原文链接:winter.blog.csdn.net/article/details/107945354

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。