主题:  js+asp 滚动信息的错误

shadowwing_5d

职务:普通成员
等级:1
金币:0.0
发贴:20
#12006/11/15 16:10:43
通过一些朋友的帮助得到滚动文本的js代码,我想将其改为数据库动态读取的页面,更改后页面在循环显示时提示错误,无法循环,请精通js的朋友帮忙看看。谢谢

上传的附件中包含3个文件:default.asp为信息滚动页面;conn.asp为数据库连接页面;database.mdb为数据库文件

相关文件(rar):点这儿打开

不方便下载的朋友可以看如下代码,这个是信息滚动页面的代码:
<style type="text/css">
<!--
body {
    font-size: 12px;
    line-height: 14px;
}
a {
    font-size: 12px;
    text-decoration: none;
    color: #ffffff;
}
a:visited {
    color: #ffffff;
}
a:link {
    font-size: 12px;
    text-decoration: none;
}
a:hover {
    font-size: 12px;
    color: #ffffff;
    text-decoration: none;
}
-->
</style>
<body leftmargin=0 topmargin=0 marginwidth=0 marginheight=0 style=overflow-x:hidden;overflow-y:hidden>

<%@language=vbscript%>
<!--#include file="conn.asp" -->
<%
set rs = Server.CreateObject("ADODB.Recordset"
sql = "SELECT * FROM adv where adv_type=1 order by id desc"
rs.open sql,conn,3,2
%>

<%str=str%>
<%str=str&"<script>"%>

<%str=str&"var marqueeContent=new Array();"%>
<%dim adv_url,adv_content,i
i=0
%>
<%if not rs.eof or not rs.bof then %>
<%while(not rs.eof)%>
<%str=str&"marqueeContent["&i&"]='<a href=http://"&rs("adv_url"&" target=_blank>"&rs("adv_content"&"</a><br>';"%>
<%
i=i+1
rs.movenext()
wend%>
<%
end if%>

<%str=str&"var marqueeInterval=new Array();"%>
<%str=str&"var marqueeId=0;"%>
<%str=str&"var marqueeDelay=3000;"%>
<%str=str&"var marqueeHeight=14;"%>

<%str=str&"function initMarquee() {"%>
    <%str=str&"var str=marqueeContent[0];"%>
    <%str=str&"document.write('<div id=marqueeBox style=overflow:hidden;height:'+marqueeHeight+'px onmouseover=clearInterval(marqueeInterval[0]) onmouseout=marqueeInterval[0]=setInterval(\'startMarquee()\',marqueeDelay)><div style=background-color:#0000ff;>'+str+'</div><br></div>');"%>
    <%str=str&"marqueeId++;"%>
    <%str=str&"marqueeInterval[0]=setInterval('startMarquee()',marqueeDelay);"%>
    <%str=str&"}"%>
<%str=str&"function startMarquee() {"%>
    <%str=str&"var str=marqueeContent[marqueeId];"%>
        <%str=str&"marqueeId++;"%>
    <%str=str&"if(marqueeId>=marqueeContent.length) marqueeId=0;"%>
    <%str=str&"if(marqueeBox.childNodes.length==1) {"%>
        <%str=str&"var nextLine=document.createElement('DIV');"%>
        <%str=str&"nextLine.innerHTML=str;"%>
        <%str=str&"marqueeBox.appendChild(nextLine);"%>
        <%str=str&"}"%>
    <%str=str&"else {"%>
        <%str=str&"marqueeBox.childNodes[0].innerHTML=str;"%>
        <%str=str&"marqueeBox.appendChild(marqueeBox.childNodes[0]);"%>
        <%str=str&"marqueeBox.scrollTop=0;"%>
        <%str=str&"}"%>
    <%str=str&"clearInterval(marqueeInterval[1]);"%>
    <%str=str&"marqueeInterval[1]=setInterval('scrollMarquee()',20);"%>
    <%str=str&"}"%>
<%str=str&"function scrollMarquee() {"%>
    <%str=str&"marqueeBox.scrollTop++;"%>
    <%str=str&"if(marqueeBox.scrollTop%marqueeHeight==(marqueeHeight)){"%>
        <%str=str&"clearInterval(marqueeInterval[1]);"%>
        <%str=str&"}"%>
    <%str=str&"}"%>
<%str=str&"initMarquee();"%>
<%str=str&"</script>"%>
<%=str%>

<%rs.close
set rs=nothing%>