代码:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8" /> <title>Tab栏案例</title> <style type="text/css"> * { margin: 0; padding: 0; } ul { list-style: none; } .wrapper { width: 1000px; height: 475px; margin: 0 auto; margin-top: 100px; } .tab { border: 1px solid #ddd; border-bottom: 0; height: 36px; width: 320px; } .tab li { position: relative; float: left; width: 80px; height: 34px; line-height: 34px; text-align: center; cursor: pointer; border-top: 4px solid #fff; } .tab span { position: absolute; right: 0; top: 10px; background: #ddd; width: 1px; height: 14px; overflow: hidden; } .products { width: 1002px; border: 1px solid #ddd; height: 476px; } .products .main { float: left; display: none; } .products .main.active { display: block; } .tab li.active { border-color: red; border-bottom: 0; } </style> </head> <body> <div class="wrapper"> <!-- 上部分 - 选项卡 --> <ul class="tab"> <li class="tab-item active">国际大牌<span>◆</span></li> <li class="tab-item">国妆名牌<span>◆</span></li> <li class="tab-item">清洁用品<span>◆</span></li> <li class="tab-item">男士精品</li> </ul> <!-- 下部分 - 内容 --> <div class="products"> <div class="main active"> <a href="###"><img src="imgs/guojidapai.jpg" alt="" /></a> </div> <div class="main"> <a href="###"><img src="imgs/guozhuangmingpin.jpg" alt="" /></a> </div> <div class="main"> <a href="###"><img src="imgs/qingjieyongpin.jpg" alt="" /></a> </div> <div class="main"> <a href="###"><img src="imgs/nanshijingpin.jpg" alt="" /></a> </div> </div> </div> <script> // 获取事件源 let tabItems = document.querySelectorAll('.tab-item') let mains = document.querySelectorAll('.main') // 给每个tabitem添加事件监听 for (let index = 0; index < tabItems.length; index++) { // 上部分--导航栏的切换 tabItems[index].addEventListener('click', function(){ // 1 干掉所有 document.querySelector('.tab-item.active').classList.remove('active') //.tab-item.active选择器交集 // 2 复活自己 this.classList.add('active') // 下部分--内容的切换 // 1 干掉所有 document.querySelector('.main.active').classList.remove('active') // 2 复活自己 mains[index].classList.add('active') }) } </script> </body> </html>
效果图:
web API-事件基础-tab栏切换案例
最新推荐文章于 2024-11-03 16:40:52 发布