连续滚动示例标题
实例新闻,可以添加任何想要滚动的内容。包括图片等等。


……
很多网站都有公告栏,但是使用marquee滚动,兼容性不是很好,而且内容滚动完后会出现一大片空白,不连贯,本js脚本实现了不间断的连续滚动效果,内容区可以是文字、图片,兼容各种浏览器
在网页<bdoy>区需要实现滚动效果的地方添加以下代码
<script type="text/javascript">
/*****************************************************
* Share JavaScript (http://www.ShareJS.com)
* 使用此脚本程序,请保留此声明
* 获取此脚本以及更多的JavaScript程序,请访问 http://www.ShareJS.com
******************************************************/
//添加事件响应函数的函数,与本效果无关
function addEventSimple(obj,evt,fn){
if(obj.addEventListener){
obj.addEventListener(evt,fn,false);
}else if(obj.attachEvent){
obj.attachEvent('on'+evt,fn);
}
}
addEventSimple(window,'load',initScrolling);
//保存想要滚动的容器
var scrollingBox;
var scrollingInterval;
//用于记录是否“滚到头”过一次
var reachedBottom=false;
//记录第一次滚到头时候的scrollTop
var bottom;
//初始化滚动效果
function initScrolling(){
scrollingBox = document.getElementById("scrollText");
//样式设置,与滚动基本无关,应该用CSS设置。
scrollingBox.style.height = "60px";
scrollingBox.style.overflow = "hidden";
//滚动
scrollingInterval = setInterval("scrolling()",50);
//鼠标划过停止滚动效果
scrollingBox.onmouseover = over;
//鼠标划出回复滚动效果
scrollingBox.onmouseout = out;
}
//滚动效果
function scrolling(){
//开始滚动,origin是原来scrollTop
var origin = scrollingBox.scrollTop++;
//如果到头了
if(origin == scrollingBox.scrollTop){
//如果是第一次到头
if(!reachedBottom){
scrollingBox.innerHTML+=scrollingBox.innerHTML;
reachedBottom=true;
bottom=origin;
}else{
//已经到头过,只需回复头接尾的效果
scrollingBox.scrollTop=bottom;
}
}
}
function over(){
clearInterval(scrollingInterval);
}
function out(){
scrollingInterval = setInterval("scrolling()",50);
}
</script>
<div id="scrollText">
<h2>连续滚动示例标题</h2>
<p>实例新闻,可以添加任何想要滚动的内容。包括图片等等。</p>
<p><img src="http://www.sharejs.com/images/logo.gif" alt="连续滚动示例图片" /></p>
<p><img src="http://www.sharejs.com/images/logo.gif" alt="连续滚动示例图片" /></p>
<p>……</p>
</div>
其中 <div id="scrollText"></div>之间的内容为滚动内容,可以随意替换
修改一下代码
scrollingBox.style.height = "60px";
可以修改滚动的高度




