Ajax无刷新实现图片切换特效
2007-04-24 16:31
567 查看
1.页面cs代码
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Data;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Configuration;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.Security;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.WebControls;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.WebControls.WebParts;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.HtmlControls;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using AjaxPro;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
public partial class _Default : System.Web.UI.Page
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
protected string displayCategoryID;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
protected void Page_Load(object sender, EventArgs e)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
Utility.RegisterTypeForAjax(typeof(AjaxMethod));
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
displayCategoryID = "17";
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
}
2.html代码
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<html xmlns="http://www.w3.org/1999/xhtml" >
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<head runat="server">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<title>Ajax无刷新实现图片切换特效</title>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<link type="text/css" href="css/tree.css" rel="stylesheet">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<link type="text/css" href="css/global.css" rel="stylesheet">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<script type=text/javascript src=javascript/tree.js></script>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</head>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<body onload="PreloadImage('<%=displayCategoryID %>');">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<form id="form1" runat="server">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<div id="photoarea" style="width: 514px; height: 496px; left: 0px; top: 0px;">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<div id="photo" style="left: 5px; top: 9px; height: 432px;">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<img id="slideShow" src="images/space.gif" style="filter:revealTrans(duration=2,transition=23)">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</div>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<div id="op" align="left" style="left: 12px; top: 457px">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<span id="progress" style="FONT-SIZE: 20px"></span>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<img id="btnPlay" src="images/play_bw.gif">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<img id="btnPause" src="images/pause_bw.gif">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<img id="btnPrev" src="images/prev_bw.gif">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<img id="btnNext" src="images/next_bw.gif">
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</div>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</div>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
<SCRIPT type="text/javascript">
![](http://www.cnblogs.com/Images/dot.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 定时器
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var timeDelay;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片自动浏览时的时间间隔
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var timeInterval = 4000;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// Array对象,存储图片文件的路径
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var image;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 当前显示的图片序号
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var num;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 当前浏览状态,该状态用于控制4个按钮的状态
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var nStatus;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片显示区域
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var slideShow = el("slideShow");
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片信息数据表
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var dt;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 预加载图片信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function PreloadImage(iCategoryID)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 采用同步调用的方式获取图片的信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var ds = AjaxMethod.GetPhotoList(iCategoryID).value;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果返回了结果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (ds)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 判断数据表是否不为空
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (ds.Tables[0].Rows.length > 0)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 返回的图片信息数据表
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
dt = ds.Tables[0];
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 用image对象存储图片的文件路径
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
image = new Array();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片在Photos目录下
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
for (var i = 0; i < dt.Rows.length; i++)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
image.push("Photos/" + dt.Rows[i].photo_path);
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// imagePreload对象用于实现图片的预缓存
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var imagePreload = new Array();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
for (var i = 0;i < image.length;i++)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 通过新建Image对象,并将其src属性指向图片的URL
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 显现图片的预缓存
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
imagePreload[i] = new Image();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
imagePreload[i].src = image[i];
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 初始化一些变量
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num = -1;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus = 0x09;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 加载第一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
next_image();
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
else // 分类下没有图片
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
alert("该目录下没有图片!");
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 实现图片切换时的效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function image_effects()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// Transition的值为0~23之间的随机数,代表24种切换效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 具体值与效果之间的对应见MSDN
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.filters.revealTrans.Transition = Math.random() * 23;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 应用并播放切换效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.filters.revealTrans.apply();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.filters.revealTrans.play();
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 切换到上一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function previous_image()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片序号向前移动,如果已经是第一张,则切换到最后一张
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num += image.length - 1;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num %= image.length;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片切换的效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
image_effects();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 将<img>对象的src属性设置为当前num对应的路径
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 切换图片的显示
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.src = image[num];
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 获取图片的标题、说明信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
getPhotoInfo();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 设置按钮状态
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
setBtnStatus();
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 切换到下一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function next_image()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 当前图片的序号向后移动,如果已经是最后一张,
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 则切换到第一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num++;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num %= image.length;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片的切换效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
image_effects();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 将<img>对象的src属性设置为当前num对应的路径
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 切换图片的显示
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.src = image[num];
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 获取图片的标题、说明信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
getPhotoInfo();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 设置按钮状态
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
setBtnStatus();
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 自动浏览图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function slideshow_automatic()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 当前图片的序号向后移动,如果已经是最后一张,
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 则切换到第一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num++;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
num %= image.length;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片的切换效果
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
image_effects();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// <img>对象的src属性设置为当前num指定的URL
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 切换图片的显示
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
slideShow.src = image[num];
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 获取图片的标题、说明信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
getPhotoInfo();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 设置按钮的状态,使播放按钮失效,暂停按钮有效
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus &= 0x0E;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus |= 0x02;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
setBtnStatus();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// slideshow_automatic函数每隔一段时间自动执行
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
timeDelay = setTimeout("slideshow_automatic()", timeInterval);
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 停止自动播放
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function pauseSlideShow()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 清除定时器,不再执行slideshow_automatic函数
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
clearTimeout(timeDelay);
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 设置按钮的状态,使播放按钮有效,暂停按钮失效
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus &= 0x0d;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus |= 0x01;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
setBtnStatus();
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 设置按钮的状态:
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 判断的依据是当前是否处于自动播放的状态
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 以及当前显示的图片是否第一张或最后一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function setBtnStatus(bDir)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果是第一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (num == 0)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 向前切换图片的按钮失效
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus &= 0x0b;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果是最后一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (num == (image.length - 1))
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 向后切换图片的按钮失效
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus &= 0x07;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果既不是最后一张,也不是第一张图片
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (num != 0 && num !=(image.length - 1))
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 向前、向后切换图片的按钮均有效
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
nStatus |= 0x0c;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 根据nStatus每一位的值确定4个按钮的背景图
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPlay").src = ((nStatus & 0x01) == 0x01) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"images/play.gif" : "images/play_bw.gif";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPause").src = ((nStatus & 0x02) == 0x02) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"images/pause.gif" : "images/pause_bw.gif";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPrev").src = ((nStatus & 0x04) == 0x04) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"images/prev.gif" : "images/prev_bw.gif";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnNext").src = ((nStatus & 0x08) == 0x08) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"images/next.gif" : "images/next_bw.gif";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 根据nStatus每一位的值确定鼠标移动到4个按钮上方时的形状
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPlay").style.cursor = ((nStatus & 0x01) == 0x01) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"pointer" : "default";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPause").style.cursor = ((nStatus & 0x02) == 0x02) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"pointer" : "default";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPrev").style.cursor = ((nStatus & 0x04) == 0x04) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"pointer" : "default";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnNext").style.cursor = ((nStatus & 0x08) == 0x08) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
"pointer" : "default";
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 根据nStatus的每一位确定4个按钮是否具有onclick响应
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPlay").onclick = ((nStatus & 0x01) == 0x01) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
function()
![](http://www.cnblogs.com/Images/dot.gif)
{slideshow_automatic();} : function()
![](http://www.cnblogs.com/Images/dot.gif)
{return false;};
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPause").onclick = ((nStatus & 0x02) == 0x02) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
function()
![](http://www.cnblogs.com/Images/dot.gif)
{pauseSlideShow();} : function()
![](http://www.cnblogs.com/Images/dot.gif)
{return false;};
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnPrev").onclick = ((nStatus & 0x04) == 0x04) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
function()
![](http://www.cnblogs.com/Images/dot.gif)
{previous_image();} : function()
![](http://www.cnblogs.com/Images/dot.gif)
{return false;};
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("btnNext").onclick = ((nStatus & 0x08) == 0x08) ?
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
function()
![](http://www.cnblogs.com/Images/dot.gif)
{next_image();} : function()
![](http://www.cnblogs.com/Images/dot.gif)
{return false;};
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 显示当前图片浏览的进度
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("progress").innerHTML = (num + 1) + " / " + image.length;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 获取图片的标题、说明信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function getPhotoInfo()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
return;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 图片ID号
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var id = dt.Rows[num].id;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果存在
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (id)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 异步调用Ajax方法GetPhotoInfo
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
AjaxMethod.GetPhotoInfo(id, GetPhotoInfo_callback);
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 回调函数,根据响应的内容显示标题和说明信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
function GetPhotoInfo_callback(response)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 获取图片的信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var dt_photo = response.value.Tables[0];
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 如果图片存在
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (dt_photo.Rows.length > 0)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// 显示图片的标题和说明
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("title").innerHTML = dt_photo.Rows[0].photo_title;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
el("description").innerHTML = dt_photo.Rows[0].photo_description;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
</SCRIPT>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</form>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</body>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</html>
3.AjaxMethod类
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Data;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Configuration;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.Security;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.WebControls;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.WebControls.WebParts;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Web.UI.HtmlControls;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using System.Data.SqlClient;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
using AjaxPro;
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
/**//// <summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// Summary description for AjaxMethod
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
/// </summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
public class AjaxMethod
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
public AjaxMethod()
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
// TODO: Add constructor logic here
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
//
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
public static string ConnectionString = ConfigurationSettings.AppSettings["ConnectionString"].ToString();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
GetDataSet#region GetDataSet
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
public static DataSet GetDataSet(string sql)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
SqlDataAdapter sda = new SqlDataAdapter(sql, ConnectionString);
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
DataSet ds = new DataSet();
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
sda.Fill(ds);
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
if (ds != null)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
return ds;
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
else
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
return null;
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
#endregion
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
/**//// <summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// 获取某个分类下图片的id和photo_path信息
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// </summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// <param name="iCategoryID">分类ID号</param>
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
/// <returns>图片信息(id, photo_path)的信息</returns>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
public static DataSet GetPhotoList(int iCategoryID)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
string sql = string.Format("SELECT id, photo_path FROM Photo WHERE photo_category_id = {0}", iCategoryID);
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
return GetDataSet(sql);
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
/**//// <summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// 获取图片信息(标题、说明)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// </summary>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
/// <param name="id">图片id</param>
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
/// <returns>图片信息</returns>
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
public static DataSet GetPhotoInfo(int id)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif)
![](http://www.cnblogs.com/Images/dot.gif)
{
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
string sql = string.Format("SELECT photo_title, photo_description FROM Photo WHERE id = {0}", id);
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
return GetDataSet(sql);
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
}
4.Web.config
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<?xml version="1.0"?>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<configuration>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<appSettings>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<add key="ConnectionString" value="Data Source=localhost;user id=sa;password=sa;initial catalog=DB"/>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</appSettings>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<connectionStrings/>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<system.web>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<httpHandlers>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</httpHandlers>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<compilation debug="false" />
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
<authentication mode="Windows" />
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</system.web>
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
</configuration>
5.sql脚本
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Photo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
drop table [dbo].[Photo]
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
GO
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
CREATE TABLE [dbo].[Photo] (
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
[id] [int] IDENTITY (1, 1) NOT NULL ,
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
[photo_title] [varchar] (128) COLLATE Chinese_PRC_CI_AS NULL ,
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
[photo_description] [text] COLLATE Chinese_PRC_CI_AS NULL ,
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
[photo_category_id] [int] NULL ,
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
[photo_path] [varchar] (255) COLLATE Chinese_PRC_CI_AS NULL
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
![](http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
GO
6.原代码/Files/singlepine/AjaxChangeImage.rar
相关文章推荐
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效(AjaxPro)
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效(AjaxPro)
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效
- Ajax无刷新实现图片切换特效