用js做了图片滚动的效果,但是图片不循环,一遍过去就停住了,把代码放在别的网站就能循环滚动

<styletype="text/css"><!--#demo{overflow:hidden;width:660px;height:140px;margin-left:... <style type="text/css">
<!--
#demo {overflow:hidden; width: 660px; height:140px; margin-left:10px}
#demo img {margin-right:5px}
#indemo {float: left; width: 700%}
#demo1 {float: left}
#demo2 {float: left}
-->
</style>
<div id="demo">
<div id="indemo">
<div id="demo1">
<%set rss=server.CreateObject("adodb.recordset")
sqls="select top 24 * from v_web_product where c_code like '0006%_' order by id desc"
rss.open sqls,conn,1,1
do until rss.eof%>
<a href="proShow.asp?id=<%=trim(rss("id"))%>&class=<%=strClass%>" target="_blank"><Img src="UpFile/<%=rss("p_smallpic")%>" width="200" height="140" title="<%=rss("p_name")%>" border="0"/></a>
<%rss.movenext
loop
rss.close%>
</div>
<div id="demo2"></div>
</div>
</div>

<script>
<!--
var speed=10; //数字越大速度越慢
var tab=document.getElementById("demo");
var tab1=document.getElementById("demo1");
var tab2=document.getElementById("demo2");
tab2.innerHTML=tab1.innerHTML;
function Marquee(){
if(tab2.offsetWidth-tab.scrollLeft<=0)
tab.scrollLeft-=tab1.offsetWidth
else{
tab.scrollLeft++;
}
}
var MyMar=setInterval(Marquee,speed);
tab.onmouseover=function() {clearInterval(MyMar)};
tab.onmouseout=function() {MyMar=setInterval(Marquee,speed)};
-->
</script>
展开
 我来答
lwasai
2012-01-19 · 超过10用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:25.8万
展开全部
就你的代码而言,只能是播放一遍就结束了。

你的代码:do until rss.eof%>是一直滚到最后一幅,但到最后一幅后你没有处理,此时应该有个判断如果是最后一幅了,则要播放第一幅,这样才能形成循环。

可以在
<%rss.movenext
loop
rss.close%>
代码里,loop前做个判断,比如if rss.eof rss.movetop(代码自己查看js帮助,具体语句我不熟,不一定有movetop函数)。这样就能形成循环了。

你说的放在其他网站,可能是外面已经做了判断了并处理,否则不可能循环播放。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式