我手里面有26个图片,我要随机出现在指定的20个页面上,图片要同时出现,叶面刷新的时候图片不变,出现的位置也不变。 一个页面最多可以有3个图片,最少可以没有。请问怎么写? 以下代码测试通过,不知道能否满足你的需求 imgurl.asp ----------------------------------- <% Dim imgurl(26) for i=0 to 25 imgurl(i)="img"&i&".gif" next '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。 'imgurl(0)="img0.gif" '... 'imgurl(25)="img25.gif" function getRndImg(n)'获得n张随机图片 MyImg="" Randomize for i=1 to 3 '循环3次 MyValue = Int((26 * Rnd))'产生0到25之间的随即数 MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">" next getRndImg=MyImg end function %>page1.asp ---------------------------- <!--#include file="imgurl.asp"//--> <%sessionName=Request.ServerVariables("SCRIPT_NAME") '直接以文件名作为session的名称if session(sessionName)="" then '如果该页未显示过图片则将随即图片记录入session session(sessionName) = getRndImg(3) end if response.write session(sessionName) %>
改进了一下每页随机显示0-3张。刷新不变 imgurl.asp ----------------------------------- <% Dim imgurl(26) for i=0 to 25 imgurl(i)="img"&i&".gif" next 'imgurl(0)="img0.gif" '... 'imgurl(25)="img25.gif" '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片 MyImg="" Randomize n=Int((4 * Rnd)) for i=1 to n '循环3次 MyValue = Int((26 * Rnd))'产生0到25之间的随即数 MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">" next getRndImg=MyImg end function %>page1.asp其他文件名自己取,内容不需要变动 ---------------------------- <!--#include file="imgurl.asp"//--> <%sessionName=Request.ServerVariables("SCRIPT_NAME") '直接以文件名作为session的名称if session(sessionName)="" then '如果该页未显示过图片则将随即图片记录入session session(sessionName) = getRndImg end if '输出图片 response.write session(sessionName) '以下用来测试随即产生0-3张图片 'response.write getRndImg %>
改进了一下每页随机显示0-3张。刷新不变 imgurl.asp ----------------------------------- <% Dim imgurl(26) for i=0 to 25 imgurl(i)="img"&i&".gif" next 'imgurl(0)="img0.gif" '... 'imgurl(25)="img25.gif" '如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片 MyImg="" Randomize n=Int((4 * Rnd)) for i=1 to n '循环3次 MyValue = Int((26 * Rnd))'产生0到25之间的随即数 MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">" next getRndImg=MyImg end function %>page1.asp其他文件名自己取,内容不需要变动 ---------------------------- <!--#include file="imgurl.asp"//--> <%sessionName=Request.ServerVariables("SCRIPT_NAME") '直接以文件名作为session的名称if session(sessionName)="" then '如果该页未显示过图片则将随即图片记录入session session(sessionName) = getRndImg end if '输出图片 response.write "document.write('"&session(sessionName)&"')" '以下用来测试随即产生0-3张图片 'response.write getRndImg %>在需要显示的页面调用如下js。 <script src=page1.asp></script>
以下代码测试通过,不知道能否满足你的需求
imgurl.asp
-----------------------------------
<%
Dim imgurl(26)
for i=0 to 25
imgurl(i)="img"&i&".gif"
next
'如果图片名称是有规律递增的可以循环赋值,否则就写26行了。
'imgurl(0)="img0.gif"
'...
'imgurl(25)="img25.gif"
function getRndImg(n)'获得n张随机图片
MyImg=""
Randomize
for i=1 to 3 '循环3次
MyValue = Int((26 * Rnd))'产生0到25之间的随即数
MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
next
getRndImg=MyImg
end function
%>page1.asp
----------------------------
<!--#include file="imgurl.asp"//-->
<%sessionName=Request.ServerVariables("SCRIPT_NAME")
'直接以文件名作为session的名称if session(sessionName)="" then
'如果该页未显示过图片则将随即图片记录入session
session(sessionName) = getRndImg(3)
end if
response.write session(sessionName)
%>
imgurl.asp
-----------------------------------
<%
Dim imgurl(26)
for i=0 to 25
imgurl(i)="img"&i&".gif"
next
'imgurl(0)="img0.gif"
'...
'imgurl(25)="img25.gif"
'如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片
MyImg=""
Randomize
n=Int((4 * Rnd))
for i=1 to n '循环3次
MyValue = Int((26 * Rnd))'产生0到25之间的随即数
MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
next
getRndImg=MyImg
end function
%>page1.asp其他文件名自己取,内容不需要变动
----------------------------
<!--#include file="imgurl.asp"//-->
<%sessionName=Request.ServerVariables("SCRIPT_NAME")
'直接以文件名作为session的名称if session(sessionName)="" then
'如果该页未显示过图片则将随即图片记录入session
session(sessionName) = getRndImg
end if
'输出图片
response.write session(sessionName)
'以下用来测试随即产生0-3张图片
'response.write getRndImg
%>
imgurl.asp
-----------------------------------
<%
Dim imgurl(26)
for i=0 to 25
imgurl(i)="img"&i&".gif"
next
'imgurl(0)="img0.gif"
'...
'imgurl(25)="img25.gif"
'如果图片名称是有规律递增的可以循环赋值,否则就写26行了。function getRndImg'获得n张随机图片
MyImg=""
Randomize
n=Int((4 * Rnd))
for i=1 to n '循环3次
MyValue = Int((26 * Rnd))'产生0到25之间的随即数
MyImg=MyImg+"<img src="&imgurl(MyValue)&" alt="&imgurl(MyValue)&">"
next
getRndImg=MyImg
end function
%>page1.asp其他文件名自己取,内容不需要变动
----------------------------
<!--#include file="imgurl.asp"//-->
<%sessionName=Request.ServerVariables("SCRIPT_NAME")
'直接以文件名作为session的名称if session(sessionName)="" then
'如果该页未显示过图片则将随即图片记录入session
session(sessionName) = getRndImg
end if
'输出图片
response.write "document.write('"&session(sessionName)&"')"
'以下用来测试随即产生0-3张图片
'response.write getRndImg
%>在需要显示的页面调用如下js。
<script src=page1.asp></script>