js怎么实现移动端tab切换时下划线滑动效果

发布时间:2021-04-19 11:43:54 作者:小新
来源:亿速云 阅读:565

这篇文章给大家分享的是有关js怎么实现移动端tab切换时下划线滑动效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1、当前 tab 出现下划线的同时,前一个下划线同时消失(出现方向与消失方向保持一致),伴随过渡效果。

js怎么实现移动端tab切换时下划线滑动效果

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>change tab</title>
 <style>
 ul {
  display: flex;
  position: absolute;
  width: 800px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  list-style: none;
 }
 li {
  position: relative;
  padding: 20px;
  color: #000;
  line-height: 1;
  transition: 0.2s all linear;
  cursor: pointer;
 }
 li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 0;
  height: 100%;
  border-bottom: 2px solid #f00;
  transition: 0.2s all linear;
 }
 
 li:active {
  background: #000;
  color: #fff;
 }
 
 .active ~ li::before {
  left: 0;
 }
 .active::before {
  width: 100%;
  left: 0;
  top: 0;
 }
 .hover::before{
  width: 200%;
 }
 </style>
</head>
<body>
 <ul>
  <li class="active tab" data-index='0'> 张杰 </li>
  <li class="tab" data-index='1'>周杰伦</li>
  <li class="tab" data-index='2'>林俊杰</li>
  <li class="tab" data-index='3'>薛之谦</li>
  <li class="tab" data-index='4'>你</li>
 </ul>
</body>
<script>
 var lis = document.getElementsByClassName('tab');
 for(var i=0; i<lis.length; i++){
 lis[i].onclick = function(){
  var that = this;
  for(var i=0; i<lis.length; i++){
  lis[i].classList.remove('active')
  this.classList.add('active')
  }
 }
 }
</script>
</html>

感谢各位的阅读!关于“js怎么实现移动端tab切换时下划线滑动效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. 原生js实现tab切换
  2. js实现标签下划线平移

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js

上一篇:js怎么实现点击图片在屏幕中间弹出放大效果

下一篇:Layer.js怎么实现表格溢出内容省略号显示悬停显示全部的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》