图片或文字循环滚动JS代码收集

注:上下滚动时,单元格demo1里面的内容高度要大于demo设置的高度才能无限滚动
       左右滚动时,单元格demo1里面的内容宽度要大于demo设置的宽度才能无限滚动

 

 

一、左右滚动代码

1.显示内容

<div id="demo" style="overflow:hidden;height:100px;width:200px;">
<table cellpadding="0" cellspace="0" border="0">
<tr>
<td id="demo1"><table width="200" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td>一</td>
      <td>二</td>
      <td>三</td>
    </tr>
</table></td>
<td id="demo2"></td>
</tr>
</table>
</div>

2.向左滚动JS

<script>
var speed=30
var MyMar=setInterval(Marquee,speed)
demo2.innerHTML=demo1.innerHTML
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
function Marquee(){
if(demo2.offsetWidth-demo.scrollLeft<=0)
   demo.scrollLeft-=demo1.offsetWidth
else{
   demo.scrollLeft++
}
}
</script>

3.向右滚动JS

<script> 
var speed=30
var MyMar=setInterval(Marquee,speed)
demo2.innerHTML=demo1.innerHTML
demo.onmouseover=function() {clearInterval(MyMar)} 
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
function Marquee(){ 
if(demo.scrollLeft<=0) 
   demo.scrollLeft+=demo2.offsetWidth 
else{ 
   demo.scrollLeft-- 


</script>


二、上下滚动代码

1.显示的内容
<div id="demo" style="OVERFLOW: hidden; WIDTH: 200px; HEIGHT: 100px; ">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
   <td id="demo1"><table width="100%" height="99" border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td>一</td>
          </tr>
          <tr>
            <td>二</td>
          </tr>
          <tr>
            <td>三</td>
          </tr>
        </table></td>
</tr>
<tr>
   <td id="demo2"></td>
</tr>
</table>
</div>

2.向上滚动JS

<SCRIPT>
var speed=30
var MyMarh=setInterval(Marqueeh,speed)
demo2.innerHTML=demo1.innerHTML
//原理是不断的向demoh2中填入demoh1中的内容,然后将已经看不见的清除
//用一个两行一列的表格,上一列再放一个装填有内容的表格,定义为demoh1,下一列是空的TD,定义为demoh2
//SPEED是用来控制速度的。
demo.onmouseover=function(){ clearInterval(MyMarh) }
demo.onmouseout=function(){ MyMarh=setInterval(Marqueeh,speed) }
function Marqueeh(){
if(demo2.offsetHeight-demo.scrollTop<=0)
   demo.scrollTop-=demo1.offsetHeight
else{
   demo.scrollTop++
}
}
</SCRIPT>

3.向下滚动JS

<script>
var speed=30
demo2.innerHTML=demo1.innerHTML
demo.scrollTop=demo.scrollHeight
var MyMar=setInterval(Marquee,speed)


demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
function Marquee(){
if(demo1.offsetTop-demo.scrollTop>=0)
   demo.scrollTop+=demo2.offsetHeight
else{
   demo.scrollTop--
}
}
</script>

经过测试,效果还可以,只是美中有点不足,在兼容性方面稍差.现在的浏览器太多太杂了..悲局呀!...

posted @ 2012-12-24 14:02  scgw  阅读(550)  评论(0编辑  收藏  举报