看到javascript中关于marquee的使用问题就转载下:
=================html框架=========
<div id="demo" style="overflow:hidden;width:228px; height:428px;">
<div id="demo1">
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<%#Eval("Content") %>
</ItemTemplate>
</asp:Repeater>
</div>
<div id="demo2"></div>
</div>
=================================
<script>
var speed=10; // 计时器时间间隔(用于控制滚动速度),单位千分之一秒
demo2.innerHTML=demo1.innerHTML; // 创建一个滚动对象的副本,目地是实现首尾相连效果
function Marquee(){
if(demo2.offsetWidth-demo.scrollLeft<=0)
demo.scrollLeft-=demo1.offsetWidth; // 如果demo已经滚出可见区,则将demo重新显示于可见区(虽然从代码来看这样解释不完全正确,但这样更容易理解)
else{
demo.scrollLeft++; // 否则将demo向左滚动一像素.
}
}
var MyMar=setInterval(Marquee,speed); // 设置一个计时器,定时调用Marquee函数实现滚动
demo.οnmοuseοver=function() {clearInterval(MyMar)} // 当鼠标移到demo上时,取消计时器,停止滚动
demo.οnmοuseοut=function() {MyMar=setInterval(Marquee,speed)} // 当鼠标离开demo时,重设计时器,开始滚动
</script>