自动轮播切换tab
一个项目中需要用到类似的功能,自己手写一个轮播切换,不足之处见谅。代码如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
}
.navUl{
border: 1px solid #ddd;
overflow: hidden;
}
.navUl li{
list-style: none;
float: left;
width: auto;
height: 30px;
line-height: 30px;
padding: 0 10px;
cursor: pointer;
}
.navUl li.activeLi{
background: rgb(155, 155, 247);
color: #fff;
}
</style>
</head>
<body>
<ul class="navUl js-navUl">
<li class="activeLi">tab1</li>
<li>tab2</li>
<li>tab3</li>
<li>tab4</li>
<li>tab5</li>
</ul>
<div>
<div id="tabCon0">
tab0内容
</div>
<div id="tabCon1" style="display:none">
tab1内容
</div>
<div id="tabCon2" style="display:none">
tab2内容
</div>
<div id="tabCon3" style="display:none">
tab3内容
</div>
<div id="tabCon4" style="display:none">
tab4内容
</div>
</div>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
window.onload=function(){
var autoTab = setInterval( changeTab,2000);
$('.js-navUl').hover(
function () {
clearInterval(autoTab);
},
function () {
autoTab = setInterval( changeTab,2000);
});
var tabIndex=0;
function changeTab(){
$(".js-navUl li").eq(tabIndex).addClass("activeLi").siblings().removeClass("activeLi");
if($("#tabCon"+tabIndex)){
$("#tabCon"+tabIndex).show().siblings().hide();
}
tabIndex++;
if(tabIndex==5){
tabIndex=0;
}
}
$(".js-navUl li").on("click",function(){
var ind=$(this).index();
if($("#tabCon"+ind)){
$("#tabCon"+ind).show().siblings().hide();
}
if(ind!=4){
tabIndex=ind+1;
}else{
tabIndex=0;
}
$(this).addClass("activeLi").siblings().removeClass("activeLi");
});
}
</script>
</body>
</html>
样式什么的自己修改即可
自动轮播切换tab的更多相关文章
- swiper4自动轮播切换手动触碰后停止踩坑——属性disableOnInteraction
swiper4轮播设置autoplay自动切换后,即默认设置: <script> var mySwiper = new Swiper('.swiper-container', { auto ...
- 原生JS编写兼容IE6,7,8浏览器无缝自动轮播(带按钮切换)
项目要求页面兼容IE6,7,8等浏览器,我们可能会遇到这个轮播效果,轮播板块要求:无限循环.自动轮播和手动切换功能,每一次滚动一小格,网上有很多这类插件,例如:swiper等! 但是很多都是不兼容IE ...
- jQuery实际案例①——淘宝精品广告(鼠标触碰切换图片、自动轮播图片)
遇到的问题:自动轮播的实现,实质与轮播图一样儿一样儿的,不要被不同的外表所欺骗,具体的js代码如下:
- es6 面向对象选项卡(自动轮播功能)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ViewPager自动轮播
Android使用ViewPager实现左右循环滑动及轮播效果 ViewPager是一个常用的android组件,不过通常我们使用ViewPager的时候不能实现左右无限循环滑动,在滑到边界的时候 ...
- 仿网易新闻 ViewPager 实现图片自动轮播
新闻 App 首页最上方一般会循环播放热点图片,如下图所示. 本文主要介绍了利用 ViewPager 实现轮播图片,图片下方加上小圆点指示器标记当前位置,并利用 Timer+Handler 实现了自动 ...
- 讲解版的自动轮播(新手福利)样式和js就不分离了为了看的方便
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- javascript焦点图左右按钮简单自动轮播
这里把css和html合在一块写了,这块代码只是布局和样式不是重点 <!DOCTYPE html> <html> <head> <meta charset=& ...
- Xamarin自定义布局系列——支持无限滚动的自动轮播视图CarouselView
背景简述 自动轮播视图(CarouselView)在现在App中的地位不言而喻,绝大多数的App中都有类似的视图,无论是WebApp还是Native App.在安卓.iOS以及Windows(UWP) ...
随机推荐
- P4962 朋也与光玉题解
题目链接 光坂小镇是一个由 n 个点(编号为 1 ~ n),m 条有向边构成的图,每个节点上都有一个光玉,光玉共有 k 种,编号为 0 ~ k−1. 为了使一切改变,朋也需要找齐全部的 k种光玉.他可 ...
- 30分钟Maven入门到精通
Maven是近年来最流行的项目构建与管理工具.不仅简化了我们开发过程中对jar包依赖的导入,还对项目的清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等所有构建过程进行了抽象和统一,方便 ...
- eclipse控制台输出太多被顶掉问题
控制台空白处右键 属性
- rsyslog+loganalyzer日志服务器,无法添加报表模板解决
loganalyzer搭建成功后,各方面功能都算正常但是发现不能创建报表模板,提示报错 mysql错误:'字段列表'中的未知列'Source1' mysql错误号:1054 解决方案:
- http与tcp
一.基本概念 1.TCP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接.TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别” ...
- 深入理解JAVA虚拟机 虚拟机性能监控和故障处理工具
jre的bin目录下的工具,都非常小.它都是tools.jar下面的代码的一层封装而已.tools.jar不是java标准,是Hotspot实现的. 名称 作用 jps JVM Process Sta ...
- px2rem在vue项目中的使用
使用方式: 1.安装 cnpm install px2rem-loader2. https://www.npmjs.com/package/px2rem-loader module.exports = ...
- 'gbk' codec can't decode byte 0xad in position 12: illegal multibyte sequence
原文链接:https://blog.csdn.net/shijing_0214/article/details/51971734 使用python的时候,经常会遇到文本编码的问题,其中最常见的就是“' ...
- windows上部署hadoop(单机版)
在window系统开发程序时,远程linux服务器上的hadoop速度很慢,影响开发效率,能不能在本地搭建hadoop环境的?答案肯定的,且看下文如何在window上部署hadoop: (源文地址:h ...
- pyqt5-动画组QAnimationGroup
from PyQt5.QtWidgets import QApplication, QWidget,QPushButton,QLabel import sys from PyQt5.QtCore im ...