您的位置:首页 > Web前端 > JavaScript

JS图片滚动(无缝、平滑、上下左右滚动)效果

2012-03-13 09:44 846 查看
<!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=utf-8" />
<title>JS图片滚动(无缝、平滑、上下左右滚动)效果</title>
<style type="text/css">
ul { list-style: none outside none; margin: 0; padding: 0; }
ul li img { border: medium none; display: block; }
#colee, #colee_bottom { float: left; margin-bottom: 24px; margin-right: 24px; }
#colee_left { clear: left; margin-bottom: 24px; }
#colee, #colee_bottom { height: 249px; overflow: hidden; width: 75px; }
#colee ul li, #colee_bottom ul li { margin-bottom: 12px; }
#colee_left, #colee_right { overflow: hidden; width: 510px; }
#colee_left ul, #colee_right ul { overflow: hidden; width: 783px; }
#colee_left ul li, #colee_right ul li { display: inline; float: left; margin-right: 12px; }
</style>
</head>
<body>
<!--下面是向上滚动代码-->
<div id="colee">
<div id="colee1">
<ul>
<li><a href="#"><img src="http://farm1.static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/75/199481072_b4a0d09597_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/57/199481087_33ae73a8de_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/77/199481108_4359e6b971_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481143_3c148d9dd3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/72/199481203_ad4cdcf109_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481218_264ce20da0_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/69/199481255_fdfe885f87_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/60/199480111_87d4cb3e38_s.jpg" width="75" height="75" alt="" /></a></li>
</ul>
</div>
<div id="colee2"></div>
</div>
<script type="text/javascript">
var speed = 30;
var colee2 = document.getElementById("colee2");
var colee1 = document.getElementById("colee1");
var colee = document.getElementById("colee");
colee2.innerHTML = colee1.innerHTML; //克隆colee1为colee2
function Marquee1() {
//当滚动至colee1与colee2交界时
if (colee2.offsetTop - colee.scrollTop <= 0) {
colee.scrollTop -= colee1.offsetHeight; //colee跳到最顶端
} else {
colee.scrollTop++;
}
}
var MyMar1 = setInterval(Marquee1, speed); //设置定时器
//鼠标移上时清除定时器达到滚动停止的目的
colee.onmouseover = function() {
clearInterval(MyMar1);
}
//鼠标移开时重设定时器
colee.onmouseout = function() {
MyMar1 = setInterval(Marquee1, speed);
}
</script>
<!--向上滚动代码结束-->

<!--下面是向下滚动代码-->
<div id="colee_bottom">
<div id="colee_bottom1">
<ul>
<li><a href="#"><img src="http://farm1.static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/75/199481072_b4a0d09597_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/57/199481087_33ae73a8de_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/77/199481108_4359e6b971_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481143_3c148d9dd3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/72/199481203_ad4cdcf109_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481218_264ce20da0_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/69/199481255_fdfe885f87_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/60/199480111_87d4cb3e38_s.jpg" width="75" height="75" alt="" /></a></li>
</ul>
</div>
<div id="colee_bottom2"></div>
</div>
<script type="text/javascript">
var speed = 30;
var colee_bottom2 = document.getElementById("colee_bottom2");
var colee_bottom1 = document.getElementById("colee_bottom1");
var colee_bottom = document.getElementById("colee_bottom");
colee_bottom2.innerHTML = colee_bottom1.innerHTML;
colee_bottom.scrollTop = colee_bottom.scrollHeight;
function Marquee2() {
if (colee_bottom1.offsetTop - colee_bottom.scrollTop >= 0) {
colee_bottom.scrollTop += colee_bottom2.offsetHeight;
} else {
colee_bottom.scrollTop--;
}
}
var MyMar2 = setInterval(Marquee2, speed);
colee_bottom.onmouseover = function() {
clearInterval(MyMar2);
}
colee_bottom.onmouseout = function() {
MyMar2 = setInterval(Marquee2, speed);
}
</script>
<!--向下滚动代码结束-->
<!--下面是向左滚动代码-->
<div id="colee_left">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="colee_left1"><ul>
<li><a href="#"><img src="http://farm1.static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/75/199481072_b4a0d09597_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/57/199481087_33ae73a8de_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/77/199481108_4359e6b971_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481143_3c148d9dd3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/72/199481203_ad4cdcf109_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481218_264ce20da0_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/69/199481255_fdfe885f87_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/60/199480111_87d4cb3e38_s.jpg" width="75" height="75" alt="" /></a></li>
</ul></td>
<td id="colee_left2"></td>
</tr>
</table>
</div>
<script type="text/javascript">
//使用div时,请保证colee_left2与colee_left1是在同一行上.
var speed = 30; //速度数值越大速度越慢
var colee_left2 = document.getElementById("colee_left2");
var colee_left1 = document.getElementById("colee_left1");
var colee_left = document.getElementById("colee_left");
colee_left2.innerHTML = colee_left1.innerHTML;
function Marquee3() {
if (colee_left2.offsetWidth - colee_left.scrollLeft <= 0) { //offsetWidth 是对象的可见宽度
colee_left.scrollLeft -= colee_left1.offsetWidth; //scrollWidth 是对象的实际内容的宽,不包边线宽度
} else {
colee_left.scrollLeft++;
}
}
var MyMar3 = setInterval(Marquee3, speed);
colee_left.onmouseover = function() {
clearInterval(MyMar3);
}
colee_left.onmouseout = function() {
MyMar3 = setInterval(Marquee3, speed);
}
</script>
<!--向左滚动代码结束-->
<!--下面是向右滚动代码-->
<div id="colee_right">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="colee_right1"><ul>
<li><a href="#"><img src="http://farm1.static.flickr.com/66/199481236_dc98b5abb3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/75/199481072_b4a0d09597_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/57/199481087_33ae73a8de_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/77/199481108_4359e6b971_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481143_3c148d9dd3_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/72/199481203_ad4cdcf109_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/58/199481218_264ce20da0_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/69/199481255_fdfe885f87_s.jpg" width="75" height="75" alt="" /></a></li>
<li><a href="#"><img src="http://farm1.static.flickr.com/60/199480111_87d4cb3e38_s.jpg" width="75" height="75" alt="" /></a></li>
</ul></td>
<td id="colee_right2"></td>
</tr>
</table>
</div>
<script type="text/javascript">
var speed = 30; //速度数值越大速度越慢
var colee_right2 = document.getElementById("colee_right2");
var colee_right1 = document.getElementById("colee_right1");
var colee_right = document.getElementById("colee_right");
colee_right2.innerHTML = colee_right1.innerHTML;
function Marquee4() {
if (colee_right.scrollLeft <= 0) {
colee_right.scrollLeft += colee_right2.offsetWidth;
} else {
colee_right.scrollLeft--;
}
}
var MyMar4 = setInterval(Marquee4, speed);
colee_right.onmouseover = function() {
clearInterval(MyMar4);
}
colee_right.onmouseout = function() {
MyMar4 = setInterval(Marquee4, speed);
}
</script>
<!--向右滚动代码结束-->
</body>
</html>


纯JS无间隙文字向上滚动代码

<!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=utf-8" />
<title>体验盒子 - UEDBOX.COM</title>
</head>

<body>
<div style="height:80px; position:relative; overflow:hidden;">
<div id="rollText" style="font-size:12px;line-height:20px;">
<ul>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
<li><a href="">◇ 无间隙文字向上滚动</a></li>
</ul>
</div>
</div>
<script type="text/javascript">
var textDiv = document.getElementById("rollText");
var textList = textDiv.getElementsByTagName("a");
if(textList.length > 2){
var textDat = textDiv.innerHTML;
var br = textDat.toLowerCase().indexOf("<li",textDat.toLowerCase().indexOf("<li")+3);
textDiv.innerHTML = textDat+textDat+textDat.substr(0,br);
textDiv.style.cssText = "position:absolute; top:0";
var textDatH = textDiv.offsetHeight;MaxRoll();
}
var minTime,maxTime,divTop,newTop=0;
function MinRoll(){
newTop++;
if(newTop<=divTop+80){
textDiv.style.top = "-" + newTop + "px";
}else{
clearInterval(minTime);
maxTime = setTimeout(MaxRoll,100);
}
}
function MaxRoll(){
divTop = Math.abs(parseInt(textDiv.style.top));
if(divTop>=0 && divTop<textDatH-80){
minTime = setInterval(MinRoll,80);
}else{
textDiv.style.top = 0;divTop = 0;newTop=0;MaxRoll();
}
}
</script>
</body>
</html>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>javascript </title>
<meta http-equiv="content-type" content="text/html;charset=UTF-8"/>
<style type="text/css">
#test{
height:100px;
width:400px;
overflow:hidden;
border-width:1px;
border-style:solid;
margin:0 auto;
background-color:yellow;
}
</style>
</head>
<body>
<div id="test">
<a href="#">我用的脚本语言是javascript</a><br/>
<a href="#">我用的后台开发语言是PHP</a><br/>
<a href="#">我用的javascript框架是jQuery</a><br/>
<a href="#">我用的PHP框架是Yii</a><br/>
<a href="#">层叠样式表语言是CSS</a><br/>
<a href="#">我喜欢的博客开发框架是wordpress</a><br/>
<a href="#">web需要统一的标准</a><br/>
<a href="#">SEO优化是很重要的</a><br/>
<a href="#">我正在研习UI设计</a><br/>
<a href="#">web测试是一个严谨的模块</a><br/>
<a href="#">我用的开发工具是Editplus,哈哈</a><br/>
</div>
<script type="text/javascript">
var speed=60;
var doc=document.getElementById("test");
var mymar=setInterval(Marquee,speed);
doc.onmouseover=function(){clearInterval(mymar);}
doc.onmouseout=function(){mymar=setInterval(Marquee,speed);}
function  Marquee()
{
if(doc.scrollTop==doc.offsetHeight)
doc.scrollTop=0;
else
doc.scrollTop++;
}
</script>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐