无缝滚动图片的一个简单封装


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="utf-8">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无缝滚动图片示例-F-BLOG</title>
<style type="text/css">
ul{list-style:none;padding:0px;margin:0px;}
#demo1 ul,#demo2 ul{width:400px;}
#demo1 li,#demo2 li{float:left;}
</style>
<script type="text/javascript">
function $(id){
return document.getElementById(id);
}
function Marquee(id,toFollow,speed)
{
var doScroll;
var scrollBox_x="<table cellpadding='0' cellspacing='0'><tr><td id='"+id+"abox'>"+$(id).innerHTML+"</td><td id='"+id+"bbox'>"+$(id).innerHTML+"</td></tr></table>";
var scrollBox_y="<table cellpadding='0' cellspacing='0'><tr><td id='"+id+"abox'>"+$(id).innerHTML+"</td></tr><tr><td id='"+id+"bbox'>"+$(id).innerHTML+"</td></tr></table>";
var begin=function(){
switch(toFollow){
case "left":
$(id).innerHTML=scrollBox_x;
doScroll=setInterval(function(){
if($(id).scrollLeft==$(id+"abox").offsetWidth) $(id).scrollLeft=0;
$(id).scrollLeft++;
},speed);
break;
case "right":
$(id).innerHTML=scrollBox_x;
doScroll=setInterval(function(){
if($(id).scrollLeft<=0) $(id).scrollLeft=$(id+"bbox").offsetWidth;
$(id).scrollLeft--;
},speed);
break;
case "top":
$(id).innerHTML=scrollBox_y;
doScroll=setInterval(function(){
if($(id).scrollTop==$(id+"abox").offsetHeight) $(id).scrollTop=0;
$(id).scrollTop++;
},speed);
break;
case "bottom":
$(id).innerHTML=scrollBox_y;
doScroll=setInterval(function(){
if($(id).scrollTop<=0) $(id).scrollTop=$(id+"bbox").offsetHeight;
$(id).scrollTop--;
},speed);
break;
}
}
begin();
$(id).onmouseover=function() {clearInterval(doScroll);}
$(id).onmouseout=function() {begin();}
}
window.onload=function(){
Marquee("demo2","left",30);
Marquee("demo1","right",20);
Marquee("demo3","top",30);
Marquee("demo4","bottom",30);
}
</script>
</head>
<body>
<div id="demo1" style="overflow:hidden;height:100px;width:300px;">
<ul>
<li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
<li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
</ul>
</div>
<br/>
<div id="demo2" style="overflow:hidden;height:100px;width:300px;">
<ul>
<li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
<li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
</ul>
</div>
<br/>
<div id="demo3" style="overflow:hidden;height:150px;width:200px;">
<ul>
<li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
<li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
</ul>
</div>
<br/>
<div id="demo4" style="overflow:hidden;height:150px;width:200px;">
<ul>
<li><img src="mm.jpg" mce_src="mm.jpg" style="height:100px;width:200px;" /></li>
<li><img src="me.jpg" mce_src="me.jpg" style="height:100px;width:200px;" /></li>
</ul>
</div>
</body>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?