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 相关文章推荐
利用location.hash实现跨域iframe自适应
May 04 Javascript
High Performance JavaScript(高性能JavaScript)读书笔记分析
May 05 Javascript
javascript学习笔记(六) Date 日期类型
Jun 19 Javascript
禁止按回车键提交表单的方法
Jun 11 Javascript
一个极为简单的requirejs实现方法
Oct 20 Javascript
Vue概念及常见命令介绍(1)
Dec 08 Javascript
详谈js原型继承的一些问题
Sep 06 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
Nov 30 Javascript
vue组件创建的三种方式小结
Feb 03 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
Jul 19 Javascript
jQuery实现鼠标拖拽登录框移动效果
Sep 13 jQuery
浅谈Vue的computed计算属性
Mar 21 Vue.js
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
用PHP实现维护文件代码
2007/06/14 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
PHP制作百度词典查词采集器
2015/01/29 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
PHP使用array_merge重新排列数组下标的方法
2015/07/22 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
JavaScript在多浏览器下for循环的使用方法
2012/11/07 Javascript
jQuery用unbind方法去掉hover事件及其他方法介绍
2013/03/18 Javascript
Javascript自定义排序 node运行 实例
2013/06/05 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器
2013/06/21 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件体系结构
2015/11/19 Javascript
vue的mixins属性详解
2018/03/14 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
ES2020 新特性(种草)
2020/01/12 Javascript
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
[02:11]完美世界DOTA2联赛10月28日赛事精彩集锦:来吧展示实力强劲
2020/10/29 DOTA
Python2.x和3.x下maketrans与translate函数使用上的不同
2015/04/13 Python
python复制文件的方法实例详解
2015/05/22 Python
python3+PyQt5实现柱状图
2018/04/24 Python
Python 实现网页自动截图的示例讲解
2018/05/17 Python
Python实现将HTML转成PDF的方法分析
2019/05/04 Python
Python-numpy实现灰度图像的分块和合并方式
2020/01/09 Python
matplotlib对象拾取事件处理的实现
2021/01/14 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
美国浴缸、水槽和水龙头购物网站:Vintage Tub & Bath
2019/11/05 全球购物
《郑和远航》教学反思
2014/04/16 职场文书
说明书范文
2014/05/07 职场文书
安全生产大检查方案
2014/05/07 职场文书
新农村建设汇报材料
2014/08/15 职场文书
装修活动策划方案
2014/08/27 职场文书
党员查摆四风问题思想汇报
2014/10/25 职场文书
2015年民主生活会发言材料
2014/12/15 职场文书
2015年医院科室工作总结范文
2015/05/26 职场文书