js实现文本向上滚动

js实现文本向上滚动

话不多说,上代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body style="background-color: #FFFFFF;overflow:hidden;">
		<div style="width: 18.75rem;height: 25rem;background-color: lightsteelblue;padding: 100px 50px;">
			<div style="width: 18.75rem;height: 25rem;overflow:hidden;background-color:rgb(255,255,255,0.3);" id="demo"> 
			</div>
		</div>
		<script type="text/javascript">
			var obj = document.getElementById("demo");
			var obj1 = document.createElement("div");
			
			//获取文本
			var words = "sweet dreams are made of this,who am I to disagree,travel the world and seven seas,everybody is looking for something,"+
						"some of them want to use you,some of them want to used by you,some of them want to abuse you,some of them want to be abused,"+
						"I wanna use you and abuse you,I gonna kown what's inside";
			words = words.split(",");
			var start = document.createElement("div");
			var div = document.createElement("div");				
			var end = document.createElement("div");
			
			start.style.height = "25rem";
			start.style.width = "18.75rem";
			obj1.appendChild(start);
			
			for(var i in words){
				var smalldiv = document.createElement("div");
				smalldiv.style.textAlign="center";
				smalldiv.style.color="white";
				smalldiv.style.fontSize="15px";
				smalldiv.innerText = words[i];
				div.appendChild(smalldiv);
			}
			obj1.appendChild(div);
				
			end.style.height = "25rem";
			end.style.width = "18.75rem";
			end.innerText="The End";
			end.style.padding="0px";
			end.style.textAlign="center";
			end.style.display="table-cell";
			end.style.verticalAlign="middle";
			end.style.color="white";
			end.style.fontSize="20px";
			obj1.appendChild(end);
			
			obj.appendChild(obj1);
			
			function Marquee(){
				obj.scrollTop ++;
				
				if(obj.scrollTop%(obj1.offsetHeight-obj.offsetHeight) == 0){
					clearInterval(timer);
					setTimeout(()=>{
						obj.scrollTop=0;
						timer = setInterval(Marquee,50)
					},50);
				}
			}
			var timer = setInterval(Marquee,50);
		</script>
	</body>
	
</html>

实现界面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值