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


Posted in Javascript onSeptember 08, 2019

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

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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Div自动滚动到末尾的代码
Oct 26 Javascript
谷歌浏览器 insertCell与appendChild的区别
Feb 12 Javascript
js或css文件后面跟参数的原因说明
Jan 09 Javascript
js取得url地址参数实例
Feb 22 Javascript
javascript获取网页中指定节点的父节点、子节点的方法小结
Apr 24 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
Aug 18 Javascript
微信小程序 生命周期详解
Oct 12 Javascript
javascript实现二叉树的代码
Jun 08 Javascript
vue中created和mounted的区别浅析
Aug 13 Javascript
vue瀑布流组件实现上拉加载更多
Mar 10 Javascript
详解React的回调渲染模式
Sep 10 Javascript
vue 使用localstorage实现面包屑的操作
Nov 16 Javascript
swiper4实现移动端导航切换
Oct 16 #Javascript
Swiper.js实现移动端元素左右滑动
Sep 08 #Javascript
vue实现抖音时间转盘
Sep 08 #Javascript
javascript移动端 电子书 翻页效果实现代码
Sep 07 #Javascript
使用 js 简单的实现 bind、call 、aplly代码实例
Sep 07 #Javascript
vue 使用高德地图vue-amap组件过程解析
Sep 07 #Javascript
vue 的 solt 子组件过滤过程解析
Sep 07 #Javascript
You might like
一个查看session内容的函数
2006/10/09 PHP
!DOCTYPE声明对JavaScript的影响分析
2010/04/12 Javascript
js TextArea的选中区域处理
2010/12/28 Javascript
js鼠标滑轮滚动事件绑定的简单实例(兼容主流浏览器)
2014/01/14 Javascript
JS长整型精度问题实例分析
2015/01/13 Javascript
javascript实现图片循环渐显播放的方法
2015/02/24 Javascript
JS实现简单的键盘打字的效果
2015/04/24 Javascript
详解JavaScript中数组的reduce方法
2016/12/02 Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/06 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
springmvc接收jquery提交的数组数据代码分享
2017/10/28 jQuery
Vue页面跳转动画效果的实现方法
2018/09/23 Javascript
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
2019/02/21 Javascript
详解小程序BackgroundAudioManager踩坑之旅
2019/12/08 Javascript
在Vue中使用antv的示例代码
2020/06/29 Javascript
解决await在forEach中不起作用的问题
2021/02/25 Javascript
Python控制多进程与多线程并发数总结
2016/10/26 Python
老生常谈进程线程协程那些事儿
2017/07/24 Python
python中的计时器timeit的使用方法
2017/10/20 Python
Python实现识别手写数字 Python图片读入与处理
2020/03/23 Python
在python3.5中使用OpenCV的实例讲解
2018/04/02 Python
Python3实现的简单工资管理系统示例
2019/03/12 Python
python3通过selenium爬虫获取到dj商品的实例代码
2019/04/25 Python
pycharm new project变成灰色的解决方法
2019/06/27 Python
通过代码实例了解Python sys模块
2020/09/14 Python
int *p=NULL和*p= NULL有什么区别
2014/10/23 面试题
大学生求职中的自我评价
2013/10/01 职场文书
毕业生就业自荐信
2013/12/04 职场文书
致标枪运动员广播稿
2014/02/06 职场文书
高中家长寄语
2014/04/02 职场文书
社区先进事迹材料
2014/05/19 职场文书
nginx对http请求处理的各个阶段详析
2021/03/31 Servers
Golang中异常处理机制详解
2021/06/08 Golang
解决springboot druid数据库连接失败后一直重连的方法
2022/04/19 Java/Android