王朝网络
分享
 
 
 

利用Javascript 与 VBscript 在asp中实现图片自动切换

王朝asp·作者佚名  2006-08-03
宽屏版  字体: |||超大  

一、原理说明:

1、利用Javascript构造一个HTTP请求向后台数据库请求图片路径和图片描述数据

2、利用返回的图片数据构造一个图片路径数组和图片描述数组

3、构造一个IMG对象

4、利用javascript的定时函数控制IMG对象的SRC属性和TITLE属性在图片路径数组和图片描述数组各元素之间切换

二、文件组成:

frontpage.asp

loadpicturesource.asp

conn.asp

site.MDB

三、详细设计:

1、客户端请求调用frontpage.asp: Http - > frontpage.asp

2、frontpage.asp调用loadpicturesource.asp获取图片数据:frontpage.asp - > loadpicturesource.asp

3、loadpicturesource.asp调用site.MDB获取数据存储:loadpicturesource.asp - > site.MDB

4、frontpage.asp利用调用返回数据构造图片路径数组和图片描述数组

5、frontpage.asp启动setInterval定时函数进行自动控制

四、文件内容:

============================================================================

frontpage.asp

============================================================================

<!--#include file="conn.asp"-->

<%

dim rs,sSql,sOutput,defaultPicture,defaultDescription,interval

'刷新频率

interval =5000

'默认图片和默认说明

set rs=server.CreateObject("ADODB.RecordSet")

sSql = "select top 1 * from pictureSet where PicName = '首页图片' order by updateDate desc"

rs.open sSql,conn,1,1

if not rs.bof and not rs.eof then

defaultPicture = rs("PicPath")

defaultDescription = rs("PicTiTle")

End If

rs.close

conn.close

Set rs = Nothing

Set conn = Nothing

defaultDescription = "图片新闻:"&defaultDescription&"(点击图片查看放大效果)"

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE></TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

<SCRIPT LANGUAGE="JavaScript">

<!--

var arraySrc;

var arrayAlt;

var picNameCounter = 0;

function GetServerData(objstrName,objstrValue,serverPage)

{

string=escape(objstrName) +"="+escape(objstrValue);

var objXMLHTTP = null;

try

{

objXMLHTTP = new ActiveXObject("MSXML2.XMLHTTP");

}

catch(e)

{

try

{

objXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");

}

catch(e2){}

}

objXMLHTTP.open("POST", serverPage, false);

objXMLHTTP.setrequestheader("content-length",string.length);

objXMLHTTP.setrequestheader("content-type","application/x-www-form-urlencoded");

objXMLHTTP.send(string);

return objXMLHTTP.responseText;

}

function Initialize()

{

var returnSrc = GetServerData("PictureSrc","PictureSrc","LoadDisplayPicture.asp");

arraySrc= returnSrc.split("|");

var returnAlt = GetServerData("PictureAlt","PictureAlt","LoadDisplayPicture.asp");

arrayAlt = returnAlt.split("|");

setInterval("PictureLoad()",<%=interval%>);

}

function PictureLoad()

{

document.all('mainpic').src = arraySrc[picNameCounter].toString();

document.all('mainpic').title = arrayAlt[picNameCounter].toString();

document.all('pictureDescption').innerText = "图片新闻:" + arrayAlt[picNameCounter].toString() + "(点击图片查看放大效果)";

picNameCounter = picNameCounter + 1;

if (picNameCounter > 9 ||picNameCounter > arraySrc.length - 1)

{

picNameCounter = 0;

}

}

function showFull()

{

var newWin = window.open();

newWin.document.write("<img src="+ newWin.opener.mainpic.src +" title="+ newWin.opener.mainpic.title +" width=100% height = 100%>");

newWin.document.close();

}

//-->

</SCRIPT>

</HEAD>

<BODY>

<table width="100%" height="224" border="0" cellpadding="0" cellspacing="0">

<tr>

<td height="0.5px" colspan="3" bgcolor=<%=bgColor%>>&nbsp;</td>

</tr>

<tr>

<td height="6" bordercolor="#000000" >

<!------------------图片切换部分------------------>

<img name = "mainpic" src = <%=defaultPicture%> width = "280" height="186" onclick = "showFull();" title=<%=defaultDescription%>>

<td width="1%" bgcolor=<%=bgColor%>></td>

<td width="65%" bordercolor="#000000" bgcolor = "#FFFFFF">

<!------------------文字新闻部分------------------>

<script language="javascript" src="owen.asp?n=7"></script>

</td>

</tr>

<tr>

<td colspan="3">

<table>

<tr>

<td align="left" width = 88%><font size = 2px><a name = "pictureDescption" ><%=defaultDescription%></a></font></td>

<td align="right"><a href = "default_all.asp" target = "_blank"><font size = 2px>更多新闻...</font></a></td>

</tr>

</table>

</td>

</tr>

<tr>

<td height="0.5px" colspan="3" bgcolor=<%=bgColor%>>&nbsp;</td>

</tr>

</table>

<script language = javascript>Initialize();</script>

</BODY>

</HTML>

============================================================================

loadpicturesource.asp

============================================================================

<!--#include file="conn.asp"-->

<%

Response.CharSet = "gb2312"

Dim PictureSrc,PictureAlt,returnValue

PictureSrc = request("PictureSrc")

PictureAlt = request("PictureAlt")

If PictureSrc <> "" Then

'加载图片地址

set rs=server.createobject("adodb.recordset")

rs.open "select * from PictureSet where picName='首页图片' order by updateDate desc",conn,3,3

for i=1 to rs.recordcount

if i=1 then

returnValue=rs("PicPath")

else

returnValue=returnValue&"|"&rs("PicPath")

end if

rs.movenext

Next

Elseif PictureAlt <> "" Then

'加载图片描述

set rs=server.createobject("adodb.recordset")

rs.open "select * from PictureSet where picName='首页图片' order by updateDate desc",conn,3,3

for i=1 to rs.recordcount

if i=1 then

returnValue=rs("PicTitle")

else

returnValue=returnValue&"|"&rs("PicTitle")

end if

rs.movenext

Next

End If

rs.close

conn.close

Set rs = Nothing

Set conn = nothing

response.write returnValue

%>

============================================================================

conn.asp

============================================================================

<%

dim conn,connstr

connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath(".")&"\site.MDB;Persist Security Info=False"

Set conn=Server.CreateObject("ADODB.CONNECTION")

conn.open connstr

%>

============================================================================

site.MDB

============================================================================

create table PictureSet

(

id int identity,

picName varchar(20),

picPath varchar(50),

picTitle varchar(50),

updateDate datetime

)

insert into PictureSet(picName,picPath,picTitle,updateDate) values('首页图片','./pictureSource/autoDisplay_1.jpg','图片说明','2006-06-17')

insert into PictureSet(picName,picPath,picTitle,updateDate) values('首页图片','./pictureSource/autoDisplay_2.jpg','图片说明','2006-06-17')

insert into PictureSet(picName,picPath,picTitle,updateDate) values('首页图片','./pictureSource/autoDisplay_3.jpg','图片说明','2006-06-17')

insert into PictureSet(picName,picPath,picTitle,updateDate) values('首页图片','./pictureSource/autoDisplay_4.jpg','图片说明','2006-06-17')

insert into PictureSet(picName,picPath,picTitle,updateDate) values('首页图片','./pictureSource/autoDisplay_5.jpg','图片说明','2006-06-17')

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有