Javascript实现无缝轮播

本文详细介绍了如何使用HTML、CSS和JavaScript实现一个简单的无缝轮播效果,涵盖了从HTML结构设计,到CSS样式设置,再到JavaScript动态控制的全过程。
摘要由CSDN通过智能技术生成

Javascript实现无缝轮播

html部分
<!-- 先用一个大盒子放置轮播的内容 -->
		<div>
			<!--在设置一个有足够宽大盒子让他放置轮播内容-->
			<!-- 使用ul>li是因为轮播内容相同,比较方便 -->
			<ul id="box">
				<!--设置轮播的内容  -->
				<li>1</li>
				<li>2</li>
				<li>3</li>
				<li>4</li>
				<li>1</li>
				<li>2</li>
			</ul>
		</div>				
css部分
/* 开始写轮播图的css样式 */
			*{
				margin: 0px;
				padding: 0px;
			}
			/* 先给大盒子固定的宽高,让它超出部分隐藏 */
			div{
				width: 300px;
				height: 150px;
				overflow: hidden;
				margin: 100px auto;
				border: 1px solid #000;
			}
			ul{
			/* 给ul一个足够的宽让他能完全放置轮播的内容 */
				width: 9999px;
				position: relative;
				/* 清除li的样式 */
				list-style: none;
				/* 给弹性盒子,让它的子集全部并排 */
				display: flex;
				left: 0;
			}
			li{
				width: 300px;
				height: 150px;
			}
			li:nth-of-type(1),li:nth-of-type(5){
				background-color: skyblue;
			}
			li:nth-of-type(2),li:nth-of-type(6){
				background-color: pink;
			}
			li:nth-of-type(3){
				background-color: aqua;
			}
			li:nth-of-type(4){
				background-color: thistle;
			}
javascript部分
// 给定时器定义的变量
			var timer;
			var num=-1;
			// 获取所有的li标签
			var lis=document.getElementsByTagName('li');
			// 创建定时器,每10ms就执行一次
			timer=setInterval(function(){
				num++;
				// 做个判断
				// 每一个li有300的宽,一共有4个
				// 所以num超出li多余的部分,如果num超出就返回0,否则就往左移动num++个px
				if(num>300*4){
					num=0;
				}
				box.style.left=-num+'px'
			},10)

一个简单的无缝轮播就完成了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值