利用javascript实现文字滚动

书上看到一段关于javascript控制div标签中的文字循环滚动的代码:
其中javascript代码如下:
<script language="JavaScript">
marqueesHeight=222;
stopscroll=false;

with(marquees){
style.width=0;
style.height=marqueesHeight;
style.overflowX="visible";
style.overflowY="hidden";
noWrap=true;
onmouseover=new Function("stopscroll=true");
onmouseout=new Function("stopscroll=false");
}
document.write('<div id="templayer" style="position:absolute;z-index:1;visibility:hidden"></div>');

preTop=0; currentTop=0;

function init(){
templayer.innerHTML="";
while(templayer.offsetHeight<marqueesHeight){
templayer.innerHTML+=marquees.innerHTML;
}
marquees.innerHTML=templayer.innerHTML+templayer.innerHTML;
setInterval("scrollup()",50);
}
//document.body.onload=init;

function scrollup(){
if(stopscroll==true) return;
preTop=marquees.scrollTop;
marquees.scrollTop+=1;
if(preTop==marquees.scrollTop){
marquees.scrollTop=templayer.offsetHeight-marqueesHeight;
marquees.scrollTop+=1;
}
}
</script>
div标签中的内容:
<div id="marquees">
滚动文字内容
</div>
本人在把这些代码单独拿来测试时,却不能实现滚动效果..请达人帮忙,主要是能利用上述代码实现滚动,懂得上述代码的使用,不要从网上找类似滚动的代码,谢谢....
希望各位测试可行后在说明方法,谢谢下面两位的回答,但都不行,成功的话愿意追加分数,谢谢....

<script type="text/javascript">
marqueesHeight=222;
stopscroll=false;

document.write('<div id="templayer" style="position:absolute;z-index:1;visibility:hidden"></div>');

preTop=0; currentTop=0;

function init(){
with(marquees){ //这段移进来。
//style.width=0; //注释掉这一句。
style.height=marqueesHeight;
style.overflowX="visible";
style.overflowY="hidden";
noWrap=true;
onmouseover=new Function("stopscroll=true");
onmouseout=new Function("stopscroll=false");
}
templayer.innerHTML="";
while(templayer.offsetHeight<marqueesHeight){
templayer.innerHTML+=marquees.innerHTML;
}
marquees.innerHTML=templayer.innerHTML+templayer.innerHTML;
setInterval("scrollup()",50);
}
onload=init; //这句改这样。

function scrollup(){
if(stopscroll==true) return;
preTop=marquees.scrollTop;
marquees.scrollTop+=1;
if(preTop==marquees.scrollTop){
marquees.scrollTop=templayer.offsetHeight-marqueesHeight;
marquees.scrollTop+=1;
}
}
</script>
div标签中的内容(因为是往上移动,所以记得加个换行标签<br />:
<div id="marquees">
滚动文字内容<br />
</div>

//没有最好,只有更好!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-07-14
楼上的说的不对,js的代码要放在
"<div id ="marquees">滚动文字内容<div>"
这个标签的后面什么位置都可以,因为先加载的js找不到这个标签就会报错,这个js不同于funtion 定义的js方法,有特殊性!
第2个回答  2009-07-14
<script>在此省略以上代码</script>应放在html的<head>放在这里</head>,"<div id ="marquees">滚动文字内容<div>"放在<body>div放在这里</body>之间,这样应该就可以了浏览了。
第3个回答  2009-07-14
这个脚本很糟糕,放眼望去全是Bug,不工作也是正常的,如果修改它就相当与重做。