关闭

[原创]自己编写的一个JS无边距滚动的类

标签: functionjavascript框架xhtmldivhtml
2016人阅读 评论(1) 收藏 举报

代码已经全放出来了,如有转载的话,希望保留出处。

[js_marquee.js]

//无间距滚动类
/*
power by www.iebsoft.com
author: yagas
mail:yagas@163.com
*/
var marquee = function(root, row1, row2, style, width, height){
 this.m_root = document.getElementById(root);
 this.m_row1 = document.getElementById(row1);
 this.m_row2 = document.getElementById(row2);
 this.m_style = style;
 
 this.m_root.style.overflow = "hidden";
 this.m_root.style.width = width;
 this.m_root.style.height = height;
 this.m_row2.innerHTML = this.m_row1.innerHTML;
}

 

marquee.prototype.scrolls = function(){
 switch(this.m_style){
 case 0:
  if(this.m_row2.offsetHeight - this.m_root.scrollTop <=0){
   this.m_root.scrollTop -= this.m_row1.offsetHeight;
  }else{
   this.m_root.scrollTop++;
  }
  break;
  
 case 1:
  if(this.m_row2.offsetWidth - this.m_root.scrollLeft <=0){
   this.m_root.scrollLeft -= this.m_row1.offsetWidth;
  }else{
   this.m_root.scrollLeft++;
  }
  break;
 }
}

marquee.prototype.star = function(obj, speed){
 var fm = function(){ obj.scrolls(); }
 var mt = setInterval(fm, speed);
 obj.m_root.onmouseover = function(){ clearInterval(mt); }
 obj.m_root.onmouseout = function(){ mt = setInterval(fm, speed); }
 
}


[index.htm]

<!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>
<script language="javascript" type="text/javascript" src="js_marquee.js"></script>
</head>

 

<body>

<!--横向滚动的模板-->
<div id="root">
  <span id="r1">11111111122222222222233333333344444444555555555888666999000</span><span id="r2"></span>
</div>
<!--横向滚动的模板-->

 

<!--横向滚动的代码-->
<script language="javascript" type="text/javascript">
 // maqruee(滚动框架, 第一列的ID, 第二列的ID, 滚动的样式, 滚动框架的宽度, 滚动框架的高度)
 //滚动的样式:
 //0  从下往上滚动
 //1  从右向左滚动
 var tt = new marquee("root", "r1", "r2", 1, "150px", "20px");
 tt.star(tt, 50);
 //50 为滚动速度,值越大,滚动得越慢
</script>
<!--横向滚动的代码-->

<br /><br /><br /><br /><br /><br /><br /><br /><br />

<!--竖向滚动的模板-->
<div id="hroot">
  <div id="hr1">111111111222222222222333333333<br />4444444455555555588866<br />6999000<br />333333333333333333333<br />555555555555555<br />88888888888888888</div>
  <div id="hr2"></div>
</div>
<!--竖向滚动的模板-->

 

<!--竖向滚动的代码-->
<script language="javascript" type="text/javascript">
 // maqruee(滚动框架, 第一行的ID, 第二行的ID, 滚动的样式, 滚动框架的宽度, 滚动框架的高度)
 var htt = new marquee("hroot", "hr1", "hr2", 0, "150px", "50px");
 htt.star(htt, 50);
 //50 为滚动速度,值越大,滚动得越慢
</script>
<!--竖向滚动的代码-->
</body>
<--代码已经全放出来了,如有转载的话,希望保留出处。-->
</html>

代码已经全放出来了,如有转载的话,希望保留出处。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:110689次
    • 积分:1803
    • 等级:
    • 排名:千里之外
    • 原创:67篇
    • 转载:1篇
    • 译文:0篇
    • 评论:20条
    文章分类
    最新评论