本文介绍几个Dom操作的几个常用的案例。虽然现在各种web框架层出不穷,也很方便。但是了解最基本的实现方法对我们开发还是有很大的帮助的:

  1.图片滚动案例

  1.1  效果如下:

  1.2  代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. .wrap{
  8. width:300px;
  9. height:335px;
  10. border:3px solid #b0b0b0;
  11. position: relative;
  12. overflow: hidden;
  13. margin:100px auto;
  14. }
  15.  
  16. img{
  17. position: absolute;
  18. top: 0;
  19. left:22px;
  20. }
  21.  
  22. /*两个span一个在div的左一个在div的右*/
  23. .wrap .left{
  24. height:100%;
  25. width:150px;
  26. position: absolute;
  27. left:0;
  28. }
  29.  
  30. .wrap .right{
  31. height:100%;
  32. width:150px;
  33. position: absolute;
  34. right:0;
  35.  
  36. }
  37.  
  38. </style>
  39.  
  40. </head>
  41. <body>
  42. <div class="wrap" id="box">
  43. <img src="2.jpg" id="naruto">
  44. <span class="left" id="pic_left"></span>
  45. <span class="right" id="pic_right"></span>
  46. </div>
  47.  
  48. <script>
  49.  
  50. var left = document.getElementById('pic_left');
  51. var right = document.getElementById('pic_right');
  52. var img = document.getElementById('naruto');
  53.  
  54. var count = 0;
  55. var time = null;
  56.  
  57. //鼠标移入的时候动作
  58. left.onmouseover = function () {
  59. time = setInterval(function () {
  60. count -= 2;
  61. count >= -100 ? img.style.left = count + 'px':clearInterval(time);
  62. },30)
  63.  
  64. };
  65.  
  66. right.onmouseover = function () {
  67. time = setInterval(function () {
  68. count += 2;
  69. count < 0 ? img.style.left = count + 'px':clearInterval(time);
  70. },30)
  71.  
  72. }
  73.  
  74. </script>
  75.  
  76. </body>
  77. </html>

图片滚动

 

 2.选项卡案例

  2.1  效果如下:

  2.2  代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. *{padding:0;margin:0;}
  8.  
  9. ul{list-style:none;}
  10.  
  11. #tab{
  12. width:480px;
  13. margin-top:55px;
  14. margin-left:auto;
  15. margin-right:auto;
  16. border:2px red solid;
  17. }
  18.  
  19. /*ul下的li的属性*/
  20. ul li{
  21. float: left;
  22. width:160px;
  23. height:60px;
  24. line-height: 60px;
  25. text-align: center;
  26. background-color:grey;
  27. }
  28.  
  29. /*ul下的li里的a的属性*/
  30. ul li a{
  31. text-decoration: none;
  32. color:black;
  33. }
  34.  
  35. /*li的active属性*/
  36. li.active{
  37. background-color: aqua;
  38. }
  39.  
  40. p{
  41. display:none;
  42. height:200px;
  43. text-align: center;
  44. line-height:200px;
  45. background-color: #2b84da;
  46. }
  47.  
  48. p.active{
  49. display:block;
  50. font-size:36px;
  51. }
  52.  
  53. </style>
  54.  
  55. </head>
  56. <body>
  57.  
  58. <div id="tab">
  59. <ul>
  60. <li class="active"><a href="#">首页</a></li>
  61. <li><a href="#">新闻</a></li>
  62. <li><a href="#">图片</a></li>
  63. </ul>
  64.  
  65. <p class="active">首页内容</p>
  66. <p>新闻内容</p>
  67. <p>图片内容</p>
  68. </div>
  69.  
  70. <script>
  71. var tab_li = document.getElementsByTagName('li');
  72. var tab_content = document.getElementsByTagName('p');
  73.  
  74. for(var i=0;i<tab_li.length;i++){
  75. //保存变量i的临时值
  76. tab_li[i].index = i;
  77. tab_li[i].onclick = function () {
  78. for(var j=0;j<tab_li.length;j++){
  79. tab_li[j].className = '';
  80. tab_content[j].className = '';
  81. }
  82. this.className = 'active';
  83. tab_content[this.index].className = 'active';
  84. }
  85. }
  86.  
  87. </script>
  88.  
  89. </body>
  90. </html>

 

 3.简易留言板

  3.1 效果如下:

  3.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>简易留言板</title>
  6. <style>
  7. a{
  8. cursor: pointer;
  9. }
  10.  
  11. a:hover{
  12. color:red;
  13. background-color: orange;
  14. }
  15. </style>
  16.  
  17. </head>
  18.  
  19. <body>
  20. <div>
  21. <p>
  22. <h2>简易留言板</h2>
  23. </p>
  24. </div>
  25.  
  26. <!--留言显示的div-->
  27. <div id="box">
  28. </div>
  29. <!--操作区-->
  30. <div>
  31. <textarea id="msg" style="height: 69px;"></textarea>
  32. <input id="words" type="button" value="留言" />
  33. <input id="count" type="button" value="统计" onclick="counter();" />
  34. </div>
  35.  
  36. <script>
  37. //取值
  38. var msg = document.getElementById('msg');
  39.  
  40. //开始时在显示区创建新的ul
  41. var ul = document.createElement('ul');
  42. var box = document.getElementById('box');
  43. box.appendChild(ul);
  44.  
  45. //点击留言的操作
  46. var words = document.getElementById('words');
  47. //全局变量count
  48. count = 0;
  49. //点击留言的事件~~~~~~~~~~~~~~~~~~~~~~~
  50. words.onclick = function () {
  51. //找到textarea的值
  52. message = msg.value;
  53. // 新建一个li
  54. var li = document.createElement('li');
  55. ////往li里添加内容——注意这里是innerHTML!!!
  56. li.innerHTML = msg.value + '<span>&nbsp;&nbsp;&nbsp;<a>X</a></span>';
  57.  
  58. //判断后加入到ul
  59. var lis = document.getElementsByTagName('li');
  60. if (lis.length === 0) {
  61. ul.appendChild(li);
  62. count++;
  63. }
  64. else {
  65. ul.insertBefore(li, lis[0]);
  66. count++;
  67. }
  68. //输入完毕后将textarea的值设置成空
  69. msg.value = '';
  70.  
  71. //点击X对a标签进行操作~~~注意要写在“留言”的onclick事件里!
  72. var spans = document.getElementsByTagName('span');
  73. for(var i=0;i<spans.length;i++){
  74. spans[i].onclick = function () {
  75. //this代表spans[i]
  76. ul.removeChild(this.parentNode);
  77. count--;
  78. }
  79. }
  80. };
  81.  
  82. //计数的函数
  83. function counter() {
  84. alert('一共发布了'+count+'条留言~');
  85. }
  86.  
  87. </script>
  88.  
  89. </body>
  90. </html>

 

4.点击有惊喜

4.1 效果如下:

4.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>点击有惊喜</title>
  6. <style>
  7. .pla{
  8. background-color: #4331ff;
  9. height:333px;
  10. width:333px;
  11. margin-top: 55px;
  12. margin-left: 40%;
  13. text-align: center;
  14. line-height: 333px;
  15. font-size:33px;
  16. color:white;
  17. }
  18. </style>
  19.  
  20. </head>
  21. <body>
  22.  
  23. <div class="pla">
  24. 点击有惊喜!
  25. </div>
  26.  
  27. <script>
  28. var obj = document.getElementsByClassName('pla')[0];
  29. console.log(obj);
  30. var a = 0;
  31. obj.onclick = function () {
  32. a++;
  33. if(a%4===1){
  34. this.style.background = 'green';
  35. this.innerText = '请继续~';
  36. this.style.color = 'black';
  37. }
  38. else if(a%4===2){
  39. this.style.background = 'orange';
  40. this.innerText = '惊喜马上来!';
  41. this.style.color = 'white';
  42. }
  43. else if(a%4===3){
  44. this.style.background = 'white';
  45. this.innerText = '哈哈!逗你玩儿呢!';
  46. this.style.color = 'black';
  47. }
  48. else{
  49. this.style.background = '#4331ff';
  50. this.innerText = '点击有惊喜!';
  51. this.style.color = 'white';
  52. }
  53.  
  54. }
  55.  
  56. </script>
  57. </body>
  58.  
  59. </html>

5.匀速运动

5.1 效果如下:

5.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. /**{*/
  8. /*padding:0;*/
  9. /*margin:0;*/
  10. /*}*/
  11.  
  12. .box{
  13. width:100px;
  14. height:100px;
  15. background-color: #2b84da;
  16. position:absolute;
  17. left:0;
  18.  
  19. }
  20.  
  21. </style>
  22.  
  23. </head>
  24. <body>
  25. <input id="btn" type="button" value="动起来" />
  26. <br><br>
  27. <div id="box1" class="box" ></div>
  28.  
  29. <script>
  30. var btn = document.getElementById('btn');
  31. var box = document.getElementById('box1');
  32.  
  33. var count = 0;
  34. var time = null;
  35.  
  36. btn.onclick = function () {
  37. time = setInterval(function () {
  38. count += 10;
  39. if(count>200){
  40. clearInterval(time);
  41. box.style.display = 'none';
  42. }
  43. //移动靠改变left的值
  44. box.style.left = count + 'px';
  45.  
  46. },100)
  47. }
  48.  
  49. </script>
  50.  
  51. </body>
  52. </html>

6.  5秒后关闭广告

6.1 效果如下:

6.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. *{padding: 0;margin:0;}
  8.  
  9. img{
  10. height:266px;
  11. width:256px;
  12. position: fixed;
  13. left:0;
  14. top:0;
  15. }
  16.  
  17. ul{
  18. list-style-type:none;
  19. }
  20. </style>
  21.  
  22. </head>
  23. <body>
  24.  
  25. <img src="1.png" id="img">
  26. <ul>
  27. <li>把标准养成习惯,让习惯符合标准</li>
  28. <li>把标准养成习惯,让习惯符合标准</li>
  29. <li>把标准养成习惯,让习惯符合标准</li>
  30. <li>把标准养成习惯,让习惯符合标准</li>
  31. <li>把标准养成习惯,让习惯符合标准</li>
  32. <li>把标准养成习惯,让习惯符合标准</li>
  33. <li>把标准养成习惯,让习惯符合标准</li>
  34. <li>把标准养成习惯,让习惯符合标准</li>
  35. <li>把标准养成习惯,让习惯符合标准</li>
  36. <li>把标准养成习惯,让习惯符合标准</li>
  37. <li>把标准养成习惯,让习惯符合标准</li>
  38. <li>把标准养成习惯,让习惯符合标准</li>
  39. <li>把标准养成习惯,让习惯符合标准</li>
  40. <li>把标准养成习惯,让习惯符合标准</li>
  41. <li>把标准养成习惯,让习惯符合标准</li>
  42. <li>把标准养成习惯,让习惯符合标准</li>
  43. <li>把标准养成习惯,让习惯符合标准</li>
  44. <li>把标准养成习惯,让习惯符合标准</li>
  45. <li>把标准养成习惯,让习惯符合标准</li>
  46. <li>把标准养成习惯,让习惯符合标准</li>
  47. <li>把标准养成习惯,让习惯符合标准</li>
  48. <li>把标准养成习惯,让习惯符合标准</li>
  49. <li>把标准养成习惯,让习惯符合标准</li>
  50. <li>把标准养成习惯,让习惯符合标准</li>
  51. <li>把标准养成习惯,让习惯符合标准</li>
  52. <li>把标准养成习惯,让习惯符合标准</li>
  53. <li>把标准养成习惯,让习惯符合标准</li>
  54. <li>把标准养成习惯,让习惯符合标准</li>
  55. <li>把标准养成习惯,让习惯符合标准</li>
  56. <li>把标准养成习惯,让习惯符合标准</li>
  57. <li>把标准养成习惯,让习惯符合标准</li>
  58. <li>把标准养成习惯,让习惯符合标准</li>
  59. <li>把标准养成习惯,让习惯符合标准</li>
  60. <li>把标准养成习惯,让习惯符合标准</li>
  61. </ul>
  62.  
  63. <script>
  64. window.onload = function () {
  65. var img = document.getElementById('img');
  66.  
  67. setTimeout(function () {
  68. img.style.display = 'none';
  69. },3000);
  70.  
  71. }
  72.  
  73. </script>
  74.  
  75. </body>
  76. </html>

7.左侧菜单

7.1 效果如下:

7.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7.  
  8. .hide{
  9. display:none;
  10. }
  11.  
  12. .item .header{
  13. height:35px;
  14. background:grey;
  15. color: orange;
  16. line-height: 35px;
  17. }
  18.  
  19. </style>
  20.  
  21. </head>
  22. <body>
  23. <div style="height:48px"></div>
  24.  
  25. <div style="width: 300px;">
  26. <div class="item">
  27. <div id="i1" class="header" onclick="ChangeMenu('i1')">菜单一</div>
  28. <div class="content">
  29. <div>内容一</div>
  30. <div>内容二</div>
  31. <div>内容三</div>
  32. </div>
  33. </div>
  34. <div class="item">
  35. <div id="i2" class="header" onclick="ChangeMenu('i2')">菜单2</div>
  36. <div class="content hide">
  37. <div>内容1</div>
  38. <div>内容2</div>
  39. <div>内容3</div>
  40. </div>
  41. </div>
  42. <div class="item">
  43. <div id="i3" class="header" onclick="ChangeMenu('i3')">菜单3</div>
  44. <div class="content hide">
  45. <div>内容1</div>
  46. <div>内容2</div>
  47. <div>内容3</div>
  48. </div>
  49. </div>
  50. </div>
  51.  
  52. <script>
  53. function ChangeMenu(nid) {
  54. var current_header = document.getElementById(nid);
  55. var item_list = current_header.parentElement.parentElement.children;
  56. for(var i=0;i<item_list.length;i++){
  57. current_item = item_list[i];
  58. current_item.children[1].classList.add('hide');
  59. }
  60. //当前的兄弟的下一个div去掉hide
  61. current_header.nextElementSibling.classList.remove('hide');
  62. }
  63.  
  64. </script>
  65.  
  66. </body>
  67. </html>

8. 全选反选取消操作的Dom实现

8.1 效果如下:

8.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6.  
  7. </head>
  8. <body style="margin: 0 auto">
  9. <div >
  10. <input type="button" value="添加" >
  11. <input type="button" value="全选" onclick="selectall()">
  12. <input type="button" value="反选" onclick="non_select()">
  13. <input type="button" value="取消" onclick="cancle()">
  14. <table>
  15. <thead>
  16. <tr>
  17. <th>选择</th>
  18. <th>主机名</th>
  19. <th>端口</th>
  20. </tr>
  21. </thead>
  22. <tbody id="tb">
  23. <tr>
  24. <td><input type="checkbox" /></td>
  25. <td>1.1.1.1</td>
  26. <td>190</td>
  27. </tr>
  28. <tr>
  29. <td><input type="checkbox" /></td>
  30. <td>1.1.1.2</td>
  31. <td>191</td>
  32. </tr>
  33. <tr>
  34. <td><input type="checkbox" /></td>
  35. <td>1.1.1.3</td>
  36. <td>192</td>
  37. </tr>
  38. </tbody>
  39. </table>
  40. </div>
  41.  
  42. <script>
  43. function selectall() {
  44. var tbody = document.getElementById("tb");
  45. //获取所有的tr
  46. var tr_list = tbody.children;
  47. for (var i=0;i<tr_list.length;i++){
  48. //循环所有tr找到当前tr
  49. var current_tr = tr_list[i];
  50. //找到tr的第一个孩子的第一个孩子,就是checkbox的input
  51. var checkbox = current_tr.children[0].children[0];
  52. checkbox.checked = true;
  53. }
  54.  
  55. }
  56.  
  57. function cancle() {
  58. var tbody = document.getElementById("tb");
  59. var tr_list = tbody.children;
  60. for (var i = 0; i < tr_list.length; i++) {
  61. var current_tr = tr_list[i];
  62. var checkbox = current_tr.children[0].children[0];
  63. checkbox.checked = false;
  64. }
  65. }
  66.  
  67. function non_select() {
  68. var tbody = document.getElementById("tb");
  69. var tr_list = tbody.children;
  70. for(var i=0;i<tr_list.length;i++){
  71. var current_tr = tr_list[i];
  72. var checkbox = current_tr.children[0].children[0];
  73. if(checkbox.checked){
  74. checkbox.checked = false;
  75. }
  76. else {
  77. checkbox.checked = true;
  78. }
  79. }
  80.  
  81. }
  82.  
  83. </script>
  84.  
  85. </body>
  86. </html>

9.模态对话框——这个用的比较多

9.1 效果如下:

9.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7.  
  8. .hide{
  9. display: none;
  10. }
  11.  
  12. .c1{
  13. position: fixed;
  14. left:0;
  15. top:0;
  16. right:0;
  17. bottom:0;
  18. background-color: grey;
  19. opacity:0.7;
  20. z-index: 9;
  21. }
  22.  
  23. .c2{
  24. width:500px;
  25. height:400px;
  26. background-color: white;
  27. position: fixed;
  28. left:50%;
  29. top:50%;
  30. margin-left: -250px;
  31. margin-top: -200px;
  32. z-index: 10;
  33. }
  34.  
  35. </style>
  36.  
  37. </head>
  38. <body style="margin: 0 auto">
  39. <div >
  40. <input type="button" value="添加" onclick="show()">
  41. <table>
  42. <thead>
  43. <tr>
  44. <th>选择</th>
  45. <th>主机名</th>
  46. <th>端口</th>
  47. </tr>
  48. </thead>
  49. <tbody>
  50. <tr>
  51. <td><input type="checkbox" /></td>
  52. <td>1.1.1.1</td>
  53. <td>190</td>
  54. </tr>
  55. <tr>
  56. <td><input type="checkbox" /></td>
  57. <td>1.1.1.2</td>
  58. <td>191</td>
  59. </tr>
  60. <tr>
  61. <td><input type="checkbox" /></td>
  62. <td>1.1.1.3</td>
  63. <td>192</td>
  64. </tr>
  65.  
  66. </tbody>
  67.  
  68. </table>
  69.  
  70. </div>
  71.  
  72. <!--第二层的遮罩层开始-->
  73. <div id="i1" class="c1 hide"></div>
  74. <!--第二层的遮罩层结束-->
  75. <!--弹出框开始-->
  76. <div id="i2" class="c2 hide">
  77. <p><input type="text"></p>
  78. <p><input type="text"></p>
  79. <p>
  80. <input type="button" value="确定">
  81. <input type="button" value="取消" onclick="hide()">
  82.  
  83. </p>
  84. </div>
  85. <!--弹出框结束-->
  86.  
  87. <script>
  88. function show() {
  89. document.getElementById("i1").classList.remove('hide');
  90. document.getElementById("i2").classList.remove('hide');
  91.  
  92. }
  93.  
  94. function hide() {
  95. document.getElementById("i1").classList.add('hide');
  96. document.getElementById("i2").classList.add('hide');
  97. }
  98.  
  99. </script>
  100.  
  101. </body>
  102. </html>

10.Dom获取当前时间

10.1 效果如下:

10.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <script>
  9.  
  10. setInterval(function () {
  11.  
  12. var date = new Date();
  13. var y = date.getFullYear();
  14. var m = date.getMonth();
  15. var d = date.getDate();
  16. var h = date.getHours();
  17. var min = date.getMinutes();
  18. var s = date.getSeconds();
  19. document.body.innerHTML = '今天是'+ y +'年' + num(m+1)+ '月' + num(d) + '日' + num(h) + ':' + num(min) + ':' + num(s);
  20. },1000);
  21.  
  22. function num(n) {
  23. if(n<10){
  24. return '0' + n;
  25. }
  26. else {
  27. return n;
  28. }
  29. }
  30.  
  31. </script>
  32.  
  33. </body>
  34. </html>

11.输入框案例

11.1 效果如下:

11.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style>
  7. /**{padding:0;margin:0;}*/
  8. .w_div{
  9. border:2px orange solid;width:388px;
  10. position: relative;
  11. }
  12.  
  13. #msg{
  14. position: absolute;
  15. left:0;
  16. top:72px;
  17. color:grey;
  18. }
  19.  
  20. </style>
  21.  
  22. </head>
  23. <body>
  24. <div style="border: 2px red solid;width:388px;">
  25. <br>
  26. <label>placeholder方法效果:</label>
  27. <input style="height: 33px;width:196px;" type="text" placeholder="请输入内容~ aa">
  28. <br><br>
  29. </div>
  30. <br><br>
  31.  
  32. <div class="w_div" >
  33. <br>
  34. <label>label与input利用position方法:</label>
  35. <br><br>
  36. <input style="height:33px;width:196px" type="text" id="text" />
  37. <lable for="txt" id="msg">输入~~ aa</lable>
  38. <br><br>
  39. </div>
  40.  
  41. <script>
  42. var text = document.getElementById('text');
  43. var msg = document.getElementById('msg');
  44. //检测用户输入表单的时候
  45. text.oninput = function () {
  46. if(this.value === ''){
  47. msg.style.display = 'block';
  48. }
  49. else
  50. {
  51. msg.style.display = 'none';
  52. }
  53. }
  54.  
  55. </script>
  56.  
  57. </body>
  58. </html>

12.联动框

12.1 效果如下:

12.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>联动</title>
  6. </head>
  7. <body>
  8. <select name="" id="province">
  9. <option value="">请选择省份</option>
  10. </select>
  11.  
  12. <select name="" id="city">
  13. <option value="">请选择城市</option>
  14. </select>
  15.  
  16. <script>
  17. data = {"内蒙古":["包头市","呼和浩特市","乌海市","临河市"],"四川省":["成都市","绵阳市"],"河北省":["邯郸市","邢台市"]};
  18.  
  19. p = document.getElementById('province');
  20. c = document.getElementById('city');
  21.  
  22. for(var i in data){
  23. optionP = document.createElement('option');
  24. optionP.innerHTML = i;
  25. p.appendChild(optionP);
  26. }
  27.  
  28. p.onchange = function(){
  29. //先清空city的option
  30. c.innerHTML = '';
  31. current_pro = this.value;
  32. //获取省份的option的value的值也可以这么做:
  33. //this.options:所有的option标签;this.selectedIndex:当前选择的标签的索引
  34. //var current_pro = (this.options[this.selectedIndex]).innerText;
  35. city_lst = data[current_pro];
  36. // console.log(city_lst);
  37. //遍历city_lst,重铸city的option
  38. for(var i=0;i<city_lst.length;i++){
  39. optionC = document.createElement('option');
  40. optionC.innerHTML = city_lst[i];
  41. c.appendChild(optionC)
  42. }
  43. }
  44.  
  45. </script>
  46. </body>
  47. </html>

13.计时器

13.1效果如下:

13.2 代码如下

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>计时器</title>
  6. </head>
  7. <body>
  8. <input type="text" id="time" style="width: 233px;">
  9. <input type="button" id="start" value="start">
  10. <input type="button" id="stop" value="stop">
  11.  
  12. <script>
  13. text_obj = document.getElementById('time');
  14. start_obj = document.getElementById('start');
  15. stop_obj = document.getElementById('stop');
  16.  
  17. //设置一个全局变量,接收setInterval计时器对象,方便后面将它clear掉
  18. var s;
  19. //格式化显示格式
  20. function num(n) {
  21. if(n<10){
  22. return '0' + n;
  23. }
  24. else {
  25. return n;
  26. }
  27. }
  28. //开始
  29. start_obj.onclick = function(){
  30. s = setInterval(function () {
  31.  
  32. var date = new Date();
  33. var y = date.getFullYear();
  34. var m = date.getMonth();//0--11,所以实际月份得加1
  35. var d = date.getDate();
  36. var h = date.getHours();
  37. var min = date.getMinutes();
  38. var s = date.getSeconds();
  39. text_obj.value = '今天是'+ y +'年' + num(m+1)+ '月' + num(d) + '日' + num(h) + ':' + num(min) + ':' + num(s);
  40. },1000);
  41. };
  42. //停止
  43. stop_obj.onclick = function(){
  44. clearInterval(s);
  45. }
  46.  
  47. </script>
  48. </body>
  49. </html>

14.文字动态变化

14.1 效果如下:

14.2 代码如下:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <div id="i1" style="background-color: aqua">欢迎欢迎莅临指导</div>
  9.  
  10. <script>
  11. function func1() {
  12.  
  13. //根据id获取指定标签的内容,定义局部变量接收
  14. var tag = document.getElementById("i1");
  15. //获取标签内部的字符串
  16. var content = tag.innerText;
  17.  
  18. var f = content.charAt(0);
  19. var l = content.substring(1,content.length);
  20.  
  21. var new_content = l+f;
  22. tag.innerText = new_content;
  23.  
  24. }
  25.  
  26. setInterval('func1()',500)
  27.  
  28. </script>
  29.  
  30. </body>
  31. </html>

Dom操作的常用案例实现的更多相关文章

  1. python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)

    昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...

  2. 前端JavaScript(3)-关于DOM操作的相关案例,JS中的面向对象、定时器、BOM、位置信息

    小例子: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉,就可以 ...

  3. python 全栈开发,Day54(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)

    04-jQuery的属性操作 jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作 html属性操作:是对html文档中的属性进行读取,设置和移除操作.比如at ...

  4. 认识JQuery,JQuery的优势、语法、多库冲突、JS原生对象和JQuery对象之间相互转换和DOM操作,常用的方法

    (一)认识JQuery  JQuery是一个JavaScript库,它通过封装原生的JavaScript函数得到一套定义好的方法    JQuery的主旨:以更少的代码,实现更多的功能 (二)JQue ...

  5. WebApis中DOM操作的基本案例

    1.1. 排他操作 1.1.1 排他思想 如果有同一组元素,我们想要某一个元素实现某种样式, 需要用到循环的排他思想算法: 所有元素全部清除样式(干掉其他人) 给当前元素设置样式 (留下我自己) 注意 ...

  6. 12-关于DOM操作的相关案例

    1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...

  7. 关于DOM操作的相关案例

    1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...

  8. 12 DOM操作的相关案例

    1.模态框案例 需求: 打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 代码如下: <!DOCTYPE html> <h ...

  9. JQuery之DOM操作及常用函数

    属性操作 attr(name)获取属性值 var imgSrc = $("img").attr("src") attr(name,value)设置属性值 $(& ...

随机推荐

  1. 对中文进行MD5加密的注意事项(Java版,编码问题)

    http://blog.csdn.net/tongdao/article/details/20690187 在工作中需要和第三方进行Http通信,在通信内容中有几个参数涉及到了中文.自己在进行MD5加 ...

  2. LeetCode - Number of Distinct Islands

    Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) conn ...

  3. java保留2位小数及BigDecimal使用

    java保留两位小数的方法 import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFo ...

  4. 初始Openwrt

    系统结构 在上一章我们已经完成了刷机工作,这个时候系统进行了首次启动,并且格式化了它的"可写"分区.那么在设备里分区到底是怎么样进行的呢?我们首先需要知道:不同的处理器下OpenW ...

  5. maven 阿里云 国内镜像 中央仓库

    修改maven根目录下的conf文件夹中的setting.xml文件,具体内容和示意图如下: <mirror> <id>alimaven</id> <name ...

  6. GUI相关学习资料

    分类 1,基于OS,包括windows,linux,android,ios 2,基于语言,包括c++,java,c#,javacript 3,按照技术分类,这个其实和os,编程语言分不开,大概可以分为 ...

  7. TypeScript 之 类型推导

    https://m.runoob.com/manual/gitbook/TypeScript/_book/doc/handbook/Type%20Inference.html 类型推导:发生在初始化变 ...

  8. ElasticSearch(六)底层索引控制

    相似度算法 涉及到了ES的底层,首先讲一下ES的底层核心,相似度模型,ES的查询和传统的数据库查询最大的差别就在相似度查询(之前讲过,索引存储的最大差别就是讲非结构化数据转化为结构化),ES里面会给文 ...

  9. Typescript学习总结之模块

    面向对象的特性 模块 模块可以帮助开发者将代码分割为可重用的单元.开发者可以自己决定将模块中的哪些资源(类.方法.变量) 暴露给外部使用,哪些资源只在模块内使用. 如下图, 创建了a.ts 和b.ts ...

  10. Tornado cookie 笔记

    set_cookie()/get_cookie()的使用 def get(self): # self.get_cookie()获取cookie if not self.get_cookie('name ...