各位大哥帮忙看看,行的话100分赠送~来者有分啊,在线等

winlendy 2005-05-13 08:24:13
各位大哥~我现在就是需要做一个可以滚动的文字广告~就是那种滚上一条就停5秒,然后滚下一条上来,我现在有一个JS可以实现这种功能,但是它是静态的
<!--var messages=new Array()
messages[0]="<font face='Arial'><a href='../../index.asp'>回到首页仔细看看,看看微风吹过竹叶摇动的效果</a></font>"
messages[1]="<font face='Arial'><a href='../wytx.htm'>请到本站的网页特效区看看,这里有大量的网页特效供你选择</a></font>"
messages[2]="<font face='Arial'><a href='../../bzlt/index.asp'>如果你在游览本站时有什么问题,请到本站的论坛发表看法</a></font>"//-->
这段就是更改显示文字的,我现在就必须从数据库中动态的读取,我的想法就是从数据库中一条一条读取出来,然后存在一个数组里(链接和文本文字),然后把数组传到这里面,不知道行不行啊~哪位大哥给些原代码啊,越详细越好~先谢拉
...全文
160 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
underone 2005-05-16
  • 打赏
  • 举报
回复
问题已经讲得很清楚了啊
king2410 2005-05-16
  • 打赏
  • 举报
回复
net_lover(孟子E章) 老大给你的就是一个很好的例子啊
在ASP中得到rs("Title"),生成相应的JS的给数组赋值的代码
lishuai818 2005-05-13
  • 打赏
  • 举报
回复
....上面的好长啊
winlendy 2005-05-13
  • 打赏
  • 举报
回复
这样子做得到的就是空白呀,什么都没有显示呢~why~
怎么没有人顶了吗?
winlendy 2005-05-13
  • 打赏
  • 举报
回复
你的意思是在JS中动态的得到数据库的内容?
king2410 2005-05-13
  • 打赏
  • 举报
回复
你理解错了
不是得到数据放在ASP数组中再传给脚本
而是直接生成创建javascript数组和给数组赋值的脚本语言

vbCrLf是回车换行
winlendy 2005-05-13
  • 打赏
  • 举报
回复
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="conn.asp"-->
<%
set rs = server.CreateObject("adodb.recordset")
sql = "select top 6 * from ad where textad <> '' order by times desc"
rs.open sql,conn,3,3
dim n
'x1,x2,x3,x4,x5,x6
'dim y1,y2,y3,y4,y5,y6
n = 0
dim myarray(6)
dim urlarray(6)
%>
<%
response.write("<script language='JavaScript1.2'>")& vbCrLf
response.write("var scrollerwidth=120")& vbCrLf
response.write("var scrollerheight=80")& vbCrLf
response.write("var scrollerbgcolor='#ffdfd0'")& vbCrLf
response.write("var scrollerbackground='scrollerback.gif'")& vbCrLf
response.write("var messages=new Array()")& vbCrLf
do while not rs.eof and n < 6
response.write("messages["&n&"]='<font face='Arial'><a href='" +rs.fields("textad")+ "'>"+rs.fields("urls")+"</a></font>")& vbCrLf
'messages[1]="<font face='Arial'><a href='../wytx.htm'>请到本站的网页特效区看看,这里有大量的网页特效供你选择</a></font>"
'messages[2]="<font face='Arial'><a href='../../bzlt/index.asp'>如果你在游览本站时有什么问题,请到本站的论坛发表看法</a></font>"
%>
<%
'myarray(n) = rs.fields("textad")
'urlarray(n) = rs.fields("urls")
'response.Write(myarray(0) & "<br>")
n = n + 1
response.write(messages[n])
rs.movenext
loop
rs.close
'x1 = myarry(0)
'response.write(x1)
'word(myarry(0),myarry(1),myarry(2),myarry(3),myarry(4),myarry(5))
'url(urlarry(0),urlarry(1),urlarry(2),urlarry(3),urlarry(4),urlarry(5))
%>
///////不要修改下面的内容///////////////////////
<script language="JavaScript1.2">
if (messages.length>1)
i=2
else
i=0

function move1(whichlayer){
tlayer=eval(whichlayer)
if (tlayer.top>0&&tlayer.top<=5){
tlayer.top=0
setTimeout("move1(tlayer)",3000)
setTimeout("move2(document.main.document.second)",3000)
return
}
if (tlayer.top>=tlayer.document.height*-1){
tlayer.top-=5
setTimeout("move1(tlayer)",100)
}
else{
tlayer.top=scrollerheight
tlayer.document.write(messages[i])
tlayer.document.close()
if (i==messages.length-1)
i=0
else
i++
}
}

function move2(whichlayer){
tlayer2=eval(whichlayer)
if (tlayer2.top>0&&tlayer2.top<=5){
tlayer2.top=0
setTimeout("move2(tlayer2)",3000)
setTimeout("move1(document.main.document.first)",3000)
return
}
if (tlayer2.top>=tlayer2.document.height*-1){
tlayer2.top-=5
setTimeout("move2(tlayer2)",100)
}
else{
tlayer2.top=scrollerheight
tlayer2.document.write(messages[i])
tlayer2.document.close()
if (i==messages.length-1)
i=0
else
i++
}
}

function move3(whichdiv){
tdiv=eval(whichdiv)
if (tdiv.style.pixelTop>0&&tdiv.style.pixelTop<=5){
tdiv.style.pixelTop=0
setTimeout("move3(tdiv)",3000)
setTimeout("move4(second2)",3000)
return
}
if (tdiv.style.pixelTop>=tdiv.offsetHeight*-1){
tdiv.style.pixelTop-=5
setTimeout("move3(tdiv)",100)
}
else{
tdiv.style.pixelTop=scrollerheight
tdiv.innerHTML=messages[i]
if (i==messages.length-1)
i=0
else
i++
}
}

function move4(whichdiv){
tdiv2=eval(whichdiv)
if (tdiv2.style.pixelTop>0&&tdiv2.style.pixelTop<=5){
tdiv2.style.pixelTop=0
setTimeout("move4(tdiv2)",3000)
setTimeout("move3(first2)",3000)
return
}
if (tdiv2.style.pixelTop>=tdiv2.offsetHeight*-1){
tdiv2.style.pixelTop-=5
setTimeout("move4(second2)",100)
}
else{
tdiv2.style.pixelTop=scrollerheight
tdiv2.innerHTML=messages[i]
if (i==messages.length-1)
i=0
else
i++
}
}

function startscroll(){
if (document.all){
move3(first2)
second2.style.top=scrollerheight
second2.style.visibility='visible'
}
else if (document.layers){
document.main.visibility='show'
move1(document.main.document.first)
document.main.document.second.top=scrollerheight+5
document.main.document.second.visibility='show'
}
}

window.onload=startscroll

</script>




<ilayer id="main" width=&{scrollerwidth}; height=&{scrollerheight}; bgColor=&{scrollerbgcolor}; background=&{scrollerbackground}; visibility=hide>
<layer id="first" left=0 top=1 width=&{scrollerwidth};>
<script language="JavaScript1.2">
if (document.layers)
document.write(messages[0])
</script>
</layer><layer id="second" left=0 top=0 width=&{scrollerwidth}; visibility=hide>
<script language="JavaScript1.2">
if (document.layers)
document.write(messages[1])
</script>
</layer></ilayer><script language="JavaScript1.2">
if (document.all){
document.writeln('<span id="main2" style="position:relative;width:'+scrollerwidth+';height:'+scrollerheight+';overflow:hiden;background-color:'+scrollerbgcolor+' ;background-image:url('+scrollerbackground+')">')
document.writeln('<div style="position:absolute;width:'+scrollerwidth+';height:'+scrollerheight+';clip:rect(0 '+scrollerwidth+' '+scrollerheight+' 0);left:0;top:0">')
document.writeln('<div id="first2" style="position:absolute;width:'+scrollerwidth+';left:0;top:1;">')
document.write(messages[0])
document.writeln('</div>')
document.writeln('<div id="second2" style="position:absolute;width:'+scrollerwidth+';left:0;top:0;visibility:hidden">')
document.write(messages[1])
document.writeln('</div>')
document.writeln('</div>')
document.writeln('</span>')
}
</script>
winlendy 2005-05-13
  • 打赏
  • 举报
回复
要不我把源码发一下?
winlendy 2005-05-13
  • 打赏
  • 举报
回复
不行啊,好像~还是无法处理啊
lightenvoy 2005-05-13
  • 打赏
  • 举报
回复
是vbcrlf,换行
winlendy 2005-05-13
  • 打赏
  • 举报
回复
vbcrf是什么意思啊?
winlendy 2005-05-13
  • 打赏
  • 举报
回复
哦,我这样做的话我怎么在JS中让URL和文字动态变呢,因为得到的数组是VB的,但在JS中数组的定义都不相同啊
winlendy 2005-05-13
  • 打赏
  • 举报
回复
哦,好的,我试一试看,可以得到动态的数组,就是有点不知道怎么传到js当中啊
aspme 2005-05-13
  • 打赏
  • 举报
回复
你试着就用这个静态的改一下看看行不行?
擒兽 2005-05-13
  • 打赏
  • 举报
回复
mark
Aspclass 2005-05-13
  • 打赏
  • 举报
回复
支持楼上的
zhanglemail 2005-05-13
  • 打赏
  • 举报
回复
帮 up
孟子E章 2005-05-13
  • 打赏
  • 举报
回复
可以的,就是注意做的

Dim i
i = 0
Response.Write "<script>" & vbCrLf
Response.Write "var messages = new Array()" & vbCrlF
while Not rs.EOF
Response.Write "messages[" & i & "] = '<font ...." & rs("Title") & "'" & vbCrLf
i = i +1
rs.MoveNext
wend
chw8219 2005-05-13
  • 打赏
  • 举报
回复
晕了,好多代码啊!
winlendy 2005-05-13
  • 打赏
  • 举报
回复
可否给一个具体的作法呢,我不大明白啊·@_-
行的话就可以结贴了啊
现在就是传值不过来,VB得到的数据传不到JS中~不知怎么办啊啊
加载更多回复(1)

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧