8_hash.html 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  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. <title>Document</title>
  7. </head>
  8. <body>
  9. <div id="box">
  10. 第一个页面
  11. </div>
  12. <button id="btn1">按钮1</button>
  13. <button id="btn2">按钮2</button>
  14. <button id="btn3">按钮3</button>
  15. <button id="btn4">按钮4</button>
  16. <script>
  17. // console.log(window.location);
  18. let oBtn1 = document.getElementById('btn1');
  19. let oBtn2 = document.getElementById('btn2');
  20. let oBtn3 = document.getElementById('btn3');
  21. let oBtn4 = document.getElementById('btn4');
  22. let oBox = document.getElementById('box');
  23. let aBtn = document.querySelectorAll('button');
  24. let obj = {
  25. page1: '第一个页面',
  26. page2: '第二个页面',
  27. page3: '第三个页面',
  28. page4: '第四个页面'
  29. }
  30. for(let i = 0;i<aBtn.length;i++){
  31. aBtn[i].onclick = function(){
  32. let str = obj['page'+(i+1)]
  33. console.log(str);
  34. oBox.innerHTML = str;
  35. location.hash = "page"+(i+1)
  36. }
  37. }
  38. // oBtn1.onclick = function(){
  39. // oBox.innerHTML = '第一个页面';
  40. // location.hash = "page1"
  41. // }
  42. // oBtn2.onclick = function(){
  43. // oBox.innerHTML = '第二个页面';
  44. // location.hash = "page2"
  45. // }
  46. // oBtn3.onclick = function(){
  47. // oBox.innerHTML = '第三个页面';
  48. // location.hash = "page3"
  49. // }
  50. // oBtn4.onclick = function(){
  51. // oBox.innerHTML = '第四个页面';
  52. // location.hash = "page4"
  53. // }
  54. // 监听hash值的变化
  55. window.onhashchange = function(){
  56. let str = location.hash.slice(1);
  57. console.log(str);
  58. for(let key in obj){
  59. if(key == str){
  60. oBox.innerHTML = obj[key];
  61. }
  62. }
  63. }
  64. </script>
  65. </body>
  66. </html>