html 滑动门效果,js实现简洁的滑动门菜单(选项卡)效果代码

本文实例讲述了js实现简洁的滑动门菜单。分享给大家供大家参考。具体如下:

一个简洁实用的网页选项卡菜单,在同一个页面中实现两个选项卡,第一个是滑动门,从布局上来说基本是相似的,第二个是选项卡,这里主要使用了Js自定义函数:tabMenu,函数功能:实现tab菜单,参数说明:tabMenu(tabBox,navClass);

参数一:tabBox(tab容器id)

参数二:navClass(当前标签样式class)

备注:依赖指定html结构。

运行效果截图如下:

c5ef5b50a204ba858241819f8b925905.png

在线演示地址如下:

具体代码如下:

/p>

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

简洁的选项卡菜单

ul,li{margin:0;padding:0;}

.tabBox{width:268px;margin:20px;}

ul.tabTag{height:28px;border-bottom:1px solid #000;list-style:none}

ul.tabTag li{float:left;line-height:27px;height:27px;padding:0 18px;color:#ccc;border:1px solid #ccc;bord

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用 JavaScript 实现简洁的左侧滑动门菜单(选项卡)效果代码HTML 代码: ``` <div class="menu"> <div class="tab active" data-tab="tab1">Tab 1</div> <div class="tab" data-tab="tab2">Tab 2</div> <div class="tab" data-tab="tab3">Tab 3</div> <div class="slider"></div> </div> <div class="content"> <div class="tab-content active" data-tab="tab1">Content for Tab 1</div> <div class="tab-content" data-tab="tab2">Content for Tab 2</div> <div class="tab-content" data-tab="tab3">Content for Tab 3</div> </div> ``` CSS 代码: ``` .menu { display: flex; flex-direction: column; position: relative; width: 200px; height: 300px; background-color: #f0f0f0; } .tab { display: flex; align-items: center; justify-content: center; width: 100%; height: 50px; cursor: pointer; } .tab.active { background-color: #ccc; } .slider { position: absolute; top: 0; left: 0; width: 5px; height: 50px; background-color: #000; transition: transform 0.3s ease-in-out; } .content { flex: 1; padding: 10px; } .tab-content { display: none; } .tab-content.active { display: block; } ``` JavaScript 代码: ``` // 获取菜单和标签页元素 const tabs = document.querySelectorAll('.tab'); const tabContents = document.querySelectorAll('.tab-content'); const slider = document.querySelector('.slider'); // 给菜单项添加事件监听器 tabs.forEach(tab => { tab.addEventListener('click', () => { // 移除所有菜单项的 active 类 tabs.forEach(item => { item.classList.remove('active'); }); // 给当前点击的菜单项添加 active 类 tab.classList.add('active'); // 获取当前菜单项的索引值 const index = Array.from(tabs).indexOf(tab); // 移动滑动门到当前菜单项的位置 slider.style.transform = `translateY(${index * 50}px)`; // 隐藏所有标签页 tabContents.forEach(content => { content.classList.remove('active'); }); // 显示对应的标签页 tabContents[index].classList.add('active'); }); }); ``` 以上代码实现了一个左侧滑动门菜单(选项卡)效果,可以根据实际需求进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值