jQuery 多种高级页面属性和动画效果

╰+攻爆jí腚メ 2022-07-16 09:43 209阅读 0赞

完成目标:利用jQuery语法完成多种页面属性和动画效果

1.文字淡入淡出,显示及隐藏。

代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script src="jquery-1.4.2.min.js"></script>
  7. <script>
  8. $(function () {
  9. $('p').click(function () {
  10. $('p').toggle("slow")
  11. })
  12. $('div').click(function () {
  13. $('p').toggle("slow")
  14. })
  15. })
  16. </script>
  17. </head>
  18. <body>
  19. <p>可隐藏。可显示</p>
  20. <p>可隐藏。可显示</p>
  21. <div>点击</div>
  22. </body>
  23. </html>

效果:

CenterCenter 1Center 2
2.点击按钮使文字放大。

代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script src="jquery-1.4.2.min.js"></script>
  7. <style>
  8. </style>
  9. <script>
  10. $(function () {
  11. $('#go').click(function () {
  12. $('#block').animate({
  13. width: "90%",
  14. height: "100%",
  15. fontSize: "10em",
  16. borderWidth: 10
  17. },1000)
  18. })
  19. })
  20. </script>
  21. </head>
  22. <body>
  23. <button id="go"> Run</button>
  24. <div id="block">Hello!</div>
  25. </body>
  26. </html>

效果:

Center 3Center 4
3.图片或文字的左移或右移,并伴随逐渐消失和逐渐显示效果

代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script src="jquery-1.4.2.min.js"></script>
  7. <style>
  8. .block{
  9. background-image: url("../image/1.jpg");
  10. width: 500px;
  11. height: 500px;
  12. position: relative;
  13. }
  14. </style>
  15. <script>
  16. $(function () {
  17. $("#right").click(function(){
  18. $(".block").animate({left: '+150px',height: 'toggle', opacity: 'toggle'}, "slow");
  19. });
  20. $("#left").click(function(){
  21. $(".block").animate({left: '-150px'}, "slow");
  22. $(".block").animate({
  23. height: 'toggle', opacity: 'toggle'
  24. }, "slow");
  25. });
  26. })
  27. </script>
  28. </head>
  29. <body>
  30. <button id="left">«</button>
  31. <button id="right">»</button>
  32. <div class="block"></div>
  33. </body>
  34. </html>

效果:

Center 5Center 6Center 7
4.利用jQuery代码完成对表格的修改、保存和CheckBox的全选功能。

方法1:不适用于大型表格和数据,多用于练习使用。

代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <script src="jquery-1.4.2.min.js"></script>
  7. <script>
  8. $(function () {
  9. $('#checkAll').click(function () {
  10. if(this.checked){
  11. $('.check').attr("checked",true);
  12. }else {
  13. $('.check').attr("checked",false);
  14. }
  15. })
  16. $('.change').click(function () {
  17. var ok=$(this).parents("tr");
  18. var tdText1=ok.find("td:eq(1)").html();
  19. var tdText2=ok.find("td:eq(2)").html();
  20. var tdText3=ok.find("td:eq(3)").html();
  21. var a=$("<input type='text' id='name'>");
  22. var b=$("<input type='text' id='sex'>");
  23. var c=$("<input type='text' id='age'>");
  24. ok.find("td:eq(1)").html(a);
  25. ok.find("td:eq(2)").html(b);
  26. ok.find("td:eq(3)").html(c);
  27. a.val(tdText1);
  28. b.val(tdText2);
  29. c.val(tdText3);
  30. })
  31. $('.save').click(function () {
  32. var ok=$(this).parents("tr");
  33. var text=document.getElementById("name");
  34. var text1=document.getElementById("sex");
  35. var text2=document.getElementById("age");
  36. ok.find("td:eq(1)").html(text.value);
  37. ok.find("td:eq(2)").html(text1.value);
  38. ok.find("td:eq(3)").html(text2.value);
  39. })
  40. })
  41. </script>
  42. </head>
  43. <body>
  44. <table border="1" >
  45. <tr align="center">
  46. <td><input type="checkbox" id="checkAll"></td>
  47. <td width="100px">姓名</td>
  48. <td width="100px">性别</td>
  49. <td width="100px">年龄</td>
  50. <td width="100px">操作</td>
  51. </tr>
  52. <tr align="center">
  53. <td><input type="checkbox" class="check"></td>
  54. <td >张三</td>
  55. <td ></td>
  56. <td >18</td>
  57. <td>
  58. <input type="button" value="编辑" class="change" style="float: left">
  59. <input type="button" value="保存" class="save">
  60. </td>
  61. </tr>
  62. <tr align="center">
  63. <td><input type="checkbox" class="check"></td>
  64. <td>李四</td>
  65. <td ></td>
  66. <td>20</td>
  67. <td>
  68. <input type="button" value="编辑" class="change" style="float: left">
  69. <input type="button" value="保存" class="save">
  70. </td>
  71. </tr>
  72. <tr align="center">
  73. <td><input type="checkbox" class="check"></td>
  74. <td>王五</td>
  75. <td ></td>
  76. <td>25</td>
  77. <td>
  78. <input type="button" value="编辑" class="change" style="float: left">
  79. <input type="button" value="保存" class="save">
  80. </td>
  81. </tr>
  82. </table>
  83. </body>
  84. </html>

效果:

Center 8

Center 9

方法2:可适用于大型表格,也可做开发使用。并增加删除和新增行的功能。

代码:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>可编辑的表格</title>
  6. <script src="jquery-1.4.2.min.js"></script>
  7. <style>
  8. table{
  9. border: 1px solid black;
  10. border-collapse: collapse;
  11. width: 500px;
  12. }
  13. table th {
  14. border: 1px solid black;
  15. width: 25%;
  16. }
  17. table td {
  18. align-items: center;
  19. border: 1px solid black;
  20. width: 25%;
  21. }
  22. table th {
  23. background-color: #A3BAE9;
  24. }
  25. </style>
  26. <script>
  27. //文档准备就绪
  28. $(function () {
  29. //设置 所有 td 居中
  30. $('table td').attr("align","center");
  31. //标签+属性选择所有<编辑>按钮
  32. $('input[value="编辑"]').click(function () {
  33. //获取每一个<编辑>按钮的 下标(从0开始 所以需要+2 = 按钮在表格的所在行数)
  34. var numId = $('input[value="编辑"]').index($(this))+2;
  35. //选择表格中的所有tr 通过eq方法取得当前tr
  36. var ttr = $('table tr').eq(numId);
  37. /*当前行使用find方法找到每一个td列
  38. each方法为每一个td设置function
  39. */
  40. ttr.find("td").each(function () {
  41. /*过滤 td中的元素
  42. checkbox 、 button、text 不需要执行append
  43. 注意 return 为 跳出当前 each
  44. return false 为 跳出整个 each
  45. */
  46. if($(this).children("input[type='checkbox']").length>0){
  47. return ;
  48. }
  49. if($(this).children("input[type='button']").length>0){
  50. return ;
  51. }
  52. if($(this).children("input[type='text']").length>0){
  53. return ;
  54. }
  55. var tdText = $(this).html();
  56. $(this).html("");
  57. var inputObj = $("<input type='text'>");
  58. inputObj.appendTo($(this));
  59. inputObj.css("width","95%");
  60. inputObj.val(tdText);
  61. });
  62. })
  63. //为每一个确定按钮设置点击事件
  64. $('input[value="确定"]').click(function () {
  65. /*通过parents方法获取<确定>按钮的父容器tr
  66. 再为 tr中的每一个text设置function
  67. */
  68. var ttr=$(this).parents("tr");
  69. ttr.find('input[type="text"]').each(function () {
  70. var inputVal = $(this).val();
  71. $(this).parents('td').html(inputVal);
  72. })
  73. })
  74. //全选/反选
  75. $('#cha').click(function () {
  76. //判断checkbox是否选中
  77. if($(this).is(':checked')){
  78. $('input[type="checkbox"]').attr("checked","true");
  79. }else{
  80. $('input[type="checkbox"]').removeAttr("checked");
  81. }
  82. })
  83. $('#add').click(function () {
  84. $('table tr').eq(2).clone(true).appendTo("table");
  85. })
  86. $('#del').click(function () {
  87. $('tr:last').remove();
  88. })
  89. })
  90. </script>
  91. </head>
  92. <body>
  93. <table border="1">
  94. <thead>
  95. <tr>
  96. <th colspan="4">编辑表格</th>
  97. </tr>
  98. </thead>
  99. <tr>
  100. <th><input type="checkbox" id="cha"></th>
  101. <th>学号</th>
  102. <th>姓名</th>
  103. <th>操作</th>
  104. </tr>
  105. <tr>
  106. <td><input type="checkbox"></td>
  107. <td>000001</td>
  108. <td>张三</td>
  109. <td >
  110. <input type="button" value="编辑" >
  111. <input type="button" value="确定" >
  112. </td>
  113. </tr>
  114. <tr>
  115. <td><input type="checkbox"></td>
  116. <td>000002</td>
  117. <td>李四</td>
  118. <td>
  119. <input type="button" value="编辑" >
  120. <input type="button" value="确定" >
  121. </td>
  122. </tr>
  123. <tr>
  124. <td><input type="checkbox"></td>
  125. <td>000003</td>
  126. <td>王五</td>
  127. <td>
  128. <input type="button" value="编辑" >
  129. <input type="button" value="确定" >
  130. </td>
  131. </tr>
  132. <tr>
  133. <td><input type="checkbox"></td>
  134. <td>000004</td>
  135. <td>赵六</td>
  136. <td>
  137. <input type="button" value="编辑" >
  138. <input type="button" value="确定" >
  139. </td>
  140. </tr>
  141. <input type="button" value="新增" id="add">
  142. <input type="button" value="删除" id="del">
  143. </table>
  144. </body>
  145. </html>

效果:

Center 10
Center 11

发表评论

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

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

相关阅读

    相关 jQuery - 效果动画

    前言:                jQuery给我们封装了很多的动画效果,相比起简单传统的CSS来说,功能强大很多,今天就来学习学习 jQuery给我们封装的一系列的动画

    相关 jQuery动画效果

    学习要点: 1.显示、隐藏 2.滑动、卷动 3.淡入、淡出 4.自定义动画 5.列队动画方法 6.动画相关方法 7.动画全局属性 在以前很长一段时间里,网页上的