首页 > 编程 > JavaScript > 正文

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

2019-11-19 10:51:18
字体:
来源:转载
供稿:网友

本篇会放置多种下划线滑动效果,一篇一篇增加,更新中

1、当前 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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表