练习题2_猫眼电影.html 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  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>猫眼电影</title>
  7. <!-- 引入css文件 -->
  8. <link rel="stylesheet" href="./css/index.css">
  9. <!-- 引入图标字体 -->
  10. <link rel="stylesheet" href="https://at.alicdn.com/t/c/font_5209207_x4f20i1ljz9.css">
  11. <!-- 引入rem js -->
  12. <script src="./js/rem.js"></script>
  13. </head>
  14. <body>
  15. <div class="container">
  16. <!-- 头部区域 -->
  17. <header>
  18. <h1>猫眼电影</h1>
  19. <div class="menu">
  20. <i class="iconfont icon-menu"></i>
  21. </div>
  22. </header>
  23. <!-- 导航区域 -->
  24. <nav>
  25. <div class="address">
  26. <span class="city">哈尔滨</span>
  27. </div>
  28. <div class="nav hot">
  29. <ul>
  30. <li data-nav="hot">热映</li>
  31. <li data-nav="cinema">影院</li>
  32. <li data-nav="wait">待映</li>
  33. </ul>
  34. <div class="under-line"></div>
  35. </div>
  36. <div class="search">
  37. <i class="iconfont icon-search"></i>
  38. </div>
  39. </nav>
  40. <!-- footer区域 -->
  41. <footer>
  42. <ul>
  43. <li class="active">
  44. <i class="iconfont icon-dianying"></i>
  45. <span>电影/影院</span>
  46. </li>
  47. <li>
  48. <i class="iconfont icon-shipin"></i>
  49. <span>视频</span>
  50. </li>
  51. <li>
  52. <i class="iconfont icon-yanchu"></i>
  53. <span>演出</span>
  54. </li>
  55. <li>
  56. <i class="iconfont icon-icon-my"></i>
  57. <span>我的</span>
  58. </li>
  59. </ul>
  60. </footer>
  61. </div>
  62. <script>
  63. // 获取导航栏元素
  64. var navItems = document.querySelectorAll('.nav li');
  65. var navBar = document.querySelector(".nav")
  66. var footerItems = document.querySelectorAll("footer li");
  67. // 遍历导航栏元素,添加点击事件监听器
  68. for (var i = 0; i < navItems.length; i++) {
  69. navItems[i].ontouchstart = function () {
  70. // 获取当前按钮data-nav属性值
  71. var navValue = this.dataset.nav;
  72. navBar.className = "nav " + navValue;
  73. }
  74. }
  75. // 遍历底部导航栏元素,添加点击事件监听器
  76. for (var i = 0; i < footerItems.length; i++) {
  77. // footerItems[i].index = i; // 给每个元素添加一个索引属性
  78. footerItems[i].ontouchstart = function () {
  79. // 移除所有元素的active类
  80. for (var j = 0; j < footerItems.length; j++) {
  81. footerItems[j].classList.remove("active");
  82. }
  83. // 给当前点击的元素添加active类
  84. this.classList.add("active");
  85. }
  86. }
  87. </script>
  88. </body>
  89. </html>