JS运动之让图片无缝滚动

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>无缝滚动</title>
		<style>
		*{margin: 0; padding: 0; background: #C66;}
			#btn{
				position: absolute;
				top: 50px;
				left: 710px;
				font-size: 24px;
			}
			#btn a{color: #FFF;text-decoration: none; }	
			#btn a:hover{color: #FC9;text-decoration: none; }
					
			#div1{
				width: 1440px;
				height: 400px;
				margin: 150px auto;
				position: relative;
				background: #f60;
				overflow: hidden;
			}
			#div1 ul{
				list-style-type:none;
				margin: 0;
				padding: 0;
				position: absolute;
				top: 0;
				left: 0;
			}
			#div1 ul li{float: left; width: 480px; height: 400px}
		</style>
		<script>
			window.onload = function() {
				var timer = null;
				var oDiv = document.getElementById('div1');
				//注意:下面这步很容易出错!
				var oUl = oDiv.getElementsByTagName('ul')[0];
				var aLi = oUl.getElementsByTagName('li');
//				oUl.innerHTML = oUl.innerHTML + oUl.innerHTML;
				oUl.innerHTML += oUl.innerHTML;
				//ul的总宽度等于任何一个li的宽度乘以li的个数;
				oUl.style.width = aLi[0].offsetWidth*aLi.length+'px';
				var speed = 2;
				function move() {
					//注意宽度不能为负,否则出错;
					if(oUl.offsetLeft<-oUl.offsetWidth/2) {
						oUl.style.left = 0;
					}
					if(oUl.offsetLeft>0) {
						oUl.style.left = -oUl.offsetWidth/2+'px';
					}
					oUl.style.left = oUl.offsetLeft+speed+'px';
				}
				timer = setInterval(move,30);
				oDiv.onmouseover = function() {
					clearInterval(timer);
				}
				oDiv.onmouseout = function() {
					timer = setInterval(move,30);
				}
				var oA = document.getElementsByTagName('a');
				oA[0].onmouseover = function(){
					speed = -2;
				};
				oA[1].onmouseover = function(){
					speed = 2;
				};	
			}
		</script>
		
	</head>
	<body>
		<div id='btn'>
			<a href="javascript:;">向左</a>
			<a href="javascript:;">向右</a>
		</div>
		
		<div id='div1'>
			<ul>
				<li><img src="http://cdn.attach.w3cfuns.com/notes/pics/201609/07/232533qdz4fgqo0oko4okx.jpg"/></li>
				<li><img src="http://cdn.attach.w3cfuns.com/notes/pics/201609/07/232534dg6gzhfjhee9i7jr.jpg"/></li>
				<li><img src="http://cdn.attach.w3cfuns.com/notes/pics/201609/07/232534j7wvv79kowqvrsda.jpg"/></li>
				<li><img src="http://cdn.attach.w3cfuns.com/notes/pics/201609/07/232533o4fsq4j4qjm8z8tb.jpg"/></li>
				<li><img src="http://cdn.attach.w3cfuns.com/notes/pics/201609/07/232447x38d098zb9b8dose.jpg"/></li>
				
			</ul>
		</div>


	</body>
</html>


原文地址:http://www.w3cfuns.com/notes/32286/202f8916c6f5517def73eb6372f68b19.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值