带停顿效果的js滚动效果(可向上下左右滚动)
来源:互联网 发布:小甲鱼python好吗 编辑:程序博客网 时间:2024/05/01 13:27
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>横向带停顿图片滚动</title>
<style>
body{font-size:12px;
font-family:arial;
}
</style>
</head>
<script>
function Marquee(){
this.ID=document.getElementById(arguments[0]);
this.Direction=arguments[1];
this.Step=arguments[2];
this.Width=arguments[3];
this.Height=arguments[4];
this.Timer=arguments[5];
this.WaitTime=arguments[6];
this.StopTime=arguments[7];
if(arguments[8]){this.ScrollStep=arguments[8];}else{this.ScrollStep=this.Direction>1?this.Width:this.Height;}
this.CTL=this.StartID=this.Stop=this.MouseOver=0;
this.ID.style.overflowX=this.ID.style.overflowY="hidden";
this.ID.noWrap=true;
this.ID.style.width=this.Width;
this.ID.style.height=this.Height;
this.ClientScroll=this.Direction>1?this.ID.scrollWidth:this.ID.scrollHeight;
this.ID.innerHTML+=this.ID.innerHTML;
this.Start(this,this.Timer,this.WaitTime,this.StopTime);
}
Marquee.prototype.Start=function(msobj,timer,waittime,stoptime){
msobj.StartID=function(){msobj.Scroll();}
msobj.Continue=function(){
if(msobj.MouseOver==1){setTimeout(msobj.Continue,waittime);}
else{clearInterval(msobj.TimerID); msobj.CTL=msobj.Stop=0; msobj.TimerID=setInterval(msobj.StartID,timer);}
}
msobj.Pause=function(){msobj.Stop=1; clearInterval(msobj.TimerID); setTimeout(msobj.Continue,waittime);}
msobj.Begin=function(){
msobj.TimerID=setInterval(msobj.StartID,timer);
msobj.ID.onmouseover=function(){msobj.MouseOver=1; clearInterval(msobj.TimerID);}
msobj.ID.onmouseout=function(){msobj.MouseOver=0; if(msobj.Stop==0){clearInterval(msobj.TimerID); msobj.TimerID=setInterval(msobj.StartID,timer);}}
}
setTimeout(msobj.Begin,stoptime);
}
Marquee.prototype.Scroll=function(){
switch(this.Direction){
case 0:
this.CTL+=this.Step;
if(this.CTL>=this.ScrollStep&&this.WaitTime>0){this.ID.scrollTop+=this.ScrollStep+this.Step-this.CTL; this.Pause(); return;}
else{if(this.ID.scrollTop>=this.ClientScroll) this.ID.scrollTop-=this.ClientScroll; this.ID.scrollTop+=this.Step;}
break;
case 1:
this.CTL+=this.Step;
if(this.CTL>=this.ScrollStep&&this.WaitTime>0){this.ID.scrollTop-=this.ScrollStep+this.Step-this.CTL; this.Pause(); return;}
else{if(this.ID.scrollTop<=0) this.ID.scrollTop+=this.ClientScroll; this.ID.scrollTop-=this.Step;}
break;
case 2:
this.CTL+=this.Step;
if(this.CTL>=this.ScrollStep&&this.WaitTime>0){this.ID.scrollLeft+=this.ScrollStep+this.Step-this.CTL; this.Pause(); return;}
else{if(this.ID.scrollLeft>=this.ClientScroll) this.ID.scrollLeft-=this.ClientScroll; this.ID.scrollLeft+=this.Step;}
break;
case 3:
this.CTL+=this.Step;
if(this.CTL>=this.ScrollStep&&this.WaitTime>0){this.ID.scrollLeft-=this.ScrollStep+this.Step-this.CTL; this.Pause(); return;}
else{if(this.ID.scrollLeft<=0) this.ID.scrollLeft+=this.ClientScroll; this.ID.scrollLeft-=this.Step;}
break;
}
}
</script>
<body>
<nobr>
<div id="marqueediv8" style="width:760px;height:52px;overflow:hidden; ">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50"border="0"><img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50"border="0"><img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50"><img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50"><img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50"><img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50">
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50" >
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50" >
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50" >
<img src="/jscss/demoimg/wall_s8.jpg" width="150" height="50" >
</div>
</nobr>
<script>
window.onload=function(){
new Marquee(
"marqueediv8", //容器ID<br />
2, //向上滚动(0向上 1向下 2向左 3向右)<br />
20, //滚动的步长<br />
760, //容器可视宽度<br />
52, //容器可视高度<br />
50, //定时器 数值越小,滚动的速度越快(1000=1秒,建议不小于20)<br />
1000, //间歇停顿时间(0为不停顿,1000=1秒)<br />
1000, //开始时的等待时间(0为不等待,1000=1秒)<br />
152//间歇滚动间距(可选)<br />
);
};
</script>
</body>
</html>
- 带停顿效果的js滚动效果(可向上下左右滚动)
- JavaScript 无缝上下左右滚动加定高定宽停顿效果
- JavaScript 无缝上下左右滚动加定高定宽停顿效果
- JavaScript 无缝上下左右滚动加定高定宽停顿效果
- JS效果 - 无缝滚动/滚动加停顿
- jQuery左右滚动效果(带停顿)
- JavaScript 无缝上下左右滚动加定高定宽停顿效果(兼容ie/ff)
- JavaScript 无缝上下左右滚动加定高定宽停顿效果(兼容ie/ff)
- JavaScript 无缝上下左右滚动加定高定宽停顿效果javascript
- jQuery滚动停顿滚动效果
- JS图片滚动(无缝、平滑、上下左右滚动)效果
- JS实现图片滚动(无缝、平滑、上下左右滚动)效果
- scrollView上下左右滚动效果
- 使用js实现带有停顿效果的图片滚动(按钮控制)
- js上下左右无限循环滚动,js上下滚动效果
- (代码收藏)向上下左右不间断无缝滚动图片的效果(兼容火狐和IE)
- 向上下左右不间断无缝滚动图片的效果(兼容火狐和IE)
- js滚动的效果
- 关于做网页投票、客户计数的存储问题
- MIPI DSI 协议介绍
- iOS 64位测试出现C99错误
- ffmpeg 网络实时视频
- 免费VPN帐号申请地址
- 带停顿效果的js滚动效果(可向上下左右滚动)
- 超50只货币基金或短期理财基金端午节前限购防套利
- 页面时间格式化的处理
- JQuery弹出层效果制作
- VPN介绍
- Android中的.9.png图形的机制及制作和使用方法
- 剑指offer面试题13
- [WEB]Velocity
- ASM读写字节码