精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

基于微軟ASP.NET AJAX框架開發幻燈片播放網頁

開發 前端 后端
最近,微軟ASP.NET Ajax 1.0框架以其完整的基于Ajax的web開發方案呈現在web技術人員的前面,憑借與遺留ASP.NET系統的有機整合以及完全面向對象的客戶端JavaScript組件模型兩大絕殺正在引起越來越多的基于.NET平臺的web開發者的關注。本文屬于這個框架的基礎篇,作者想通過一個具體的例子(播放web幻燈片)來向讀者展示如何使用該框架提供的面向對象的客戶端JavaScript組件模型來進行常規的WEB開發。

一、簡介

在公司網站中,我們經常需要一個基于Web幻燈片形式的機制來演示自己的(也可能是別人的)產品。當然,你可以使用普通的JavaScript來開發這樣的幻燈片;但是,借助于ASP.NET AJAX框架,這一開發工作將得到極大簡化。在本文示例中,我們正是想將借助于Web頁面方法和客戶端腳本擴展技術開發這樣一個簡單的幻燈片。終端用戶可以播放和暫停幻燈片,也可以進行循環播放,還可以手工控制.

二、創建一個ASP.NET AJAX-Enabled網站

啟動Visual Studio 2005,然后選擇菜單項“文件|新建網站…”,使用模板“ASP.NET AJAX-Enabled網站”創建一個新的網站,并命名工程為SlideShow(選擇Visual C#作為內置語言)。此后,系統應該自動地添加對必要的程序集—System.Web.Extension.dll的參考。此外,你會注意到一個ScriptManager服務器控件自動地添加到頁面中。注意,這個服務器控件作為整個ASP.NET AJAX框架的控制中心。

然后,添加一個具有兩行和一列的HTML表格,再在第一行添加一個<img>標簽,在第二行添加六個HTML按鈕控件。下圖1展示web表單Default.aspx的大致布局。

三、創建SlideShow類

右單擊工程添加一個新的java腳本文件,并命名為JScript.js。在此,我們將創建一個稱為SlideShow的類,它將負責完成所有的幻燈片操作任務—例如播放、暫住和導航幻燈片。注意,這個SlideShow類的開發是基于ASP.NET AJAX客戶端腳本擴展技術,具體實現代碼如下所示:

Type.registerNamespace("Demo");
//構造函數及私有變量聲明 
Demo.SlideShow=function(){
this._slides=new Array();
this._delay=2000;
this._currentIndex=0;
this._pause=false;
}
//原型定義部分 
Demo.SlideShow.prototype=
{
get_Slides:function() {
return this._slides;
},
set_Slides:function(value) {
this._slides=value;
},
get_Delay:function() {
return this._delay;
},
set_Delay:function(value) {
this._delay=value;
},
get_CurrentIndex:function() {
return this._currentIndex;
},
set_CurrentIndex:function(value) {
if(value<0) {
this._currentIndex=this._slides.length-1;
return;
}
if(value>=this._slides.length) {
this._currentIndex=0;
}
else{
this._currentIndex=value;
}
},
get_IsPaused:function() {
return this._pause;
},
set_IsPaused:function(value) {
this.pause=value;
},
Pause:function() {
this._pause=true;
},
Play:function() {
this._pause=false;
window.setTimeout("slideshow.ShowImage()",
this.get_Delay());
},
ShowFirst:function() {
this._currentIndex=0;
this.ShowImage();
},
ShowLast:function() {
this._currentIndex=this._slides.length-1;
this.ShowImage();
},
ShowNext:function() {
var newIndex=this._currentIndex +1;
this.set_CurrentIndex(newIndex);
this.ShowImage();
},
ShowPrevious:function()
{
var newIndex=this._currentIndex -1;
this.set_CurrentIndex(newIndex);
this.ShowImage();
},
ShowImage:function() {
var img=$get("Image1");
if(img.style.visibility=="hidden") {
img.style.visibility="visible";
}
var slides=this.get_Slides();
var curIndex=this.get_CurrentIndex();
img.src=slides[curIndex];
if(this.get_IsPaused()==false)
{
this.set_CurrentIndex(curIndex+1);
this.Play();
}
}
}
//注冊類 
Demo.SlideShow.registerClass("Demo.SlideShow");
//創建全局SlideShow類的實例 
var slideshow=new Demo.SlideShow();

在代碼的最開始,我們先注冊一個稱為Demo的新的命名空間。然后,創建一個稱為SlideShow的類。該SlideShow類的構造器共聲明了四個私有成員變量。其中,_slides變量指向一個包含幻燈片圖像URL的數組;_delay變量指示兩張相鄰的幻燈片播放的間隔時間(單位為毫秒);_currentIndex變量存儲了當前幻燈片在_slides數組中的索引值;最后,_pause變量指示幻燈片被暫停(true)還是處于運行態(false)。

接下來,在SlideShow類的原型中,我們定義了與前面的四個屬性相關聯的getter/setter方法,也就是Slides、Delay、CurrentIndex和IsPaused。其它方法都比較基本,因此我們僅介紹方法set_CurrentIndex()。這個set_CurrentIndex()屬性方法負責檢查提供給它的索引值。如果該值超出slides數組上下標邊界,那么,它會把這個值調整到0或數組的長度減1(根據具體情況而定)。這是很關鍵的,這樣以來,幻燈片就可以進行循環播放。

接下來,Pause()方法簡單地把成員變量_pause設置為true—這可以控制幻燈片如何暫停。
Play()方法負責播放幻燈片。它首先設置_pause變量為false,然后調用JavaScript對象windows的setTimeout()方法。該setTimeout()方法接受兩個參數:在經過特定時間延遲后要執行的代碼;在此代碼執行完后對應的時間跨度(單位為毫秒)。在本例中,這個延遲值來自于get_Delay()屬性。在此,該setTimeout()方法將調用ShowImage()方法。

ShowImage()方法負責執行顯示一個圖像的核心工作。它引用了CurrentIndex和Slides兩個屬性,然后把圖像標簽的src屬性設置為Slides數組中對應的適當的圖像。注意,Image1是一個圖像標簽的ID—我們將在后面添加它。此外,還應注意$get()方法的用法,它等價于document.getElementById()方法。然后,CurrentIndex的值加1并且再次調用Play()方法。這樣以來,將形成一個無限循環,而幻燈片將持續不斷地播放下去。

最后的四個方法—ShowFirst(),ShowLast(),ShowNext()和ShowPrevious()方法只是簡單地調整_currentIndex成員變量的值,并調用ShowImage()方法來顯示一張幻燈片。

在創建類結束后,我們使用registerClass()方法把它注冊到MS AJAX框架。最后,聲明一個SlideShow類的全局實例變量。

最后打開Web頁面Default.aspx,選擇ScriptManager控件,并且設置它的EnablePageMethods屬性為true,而且還要把JScript.js文件添加到它的腳本集合中。

#p#

四、創建一個返回圖像URL的web方法

我們前面創建的SlideShow類允許你使用Slides屬性來指定幻燈片。一種使用Slides屬性的方法是創建一個圖像URL的常量數組。然而,更為適當的方法則是從服務器端得到圖像URL。通過這種方式,你可以基于一些條件或甚至一種數據庫驅動的邏輯返回圖像。這需要我們創建一個能夠返回一個圖像URL數組的web方法。然后,從客戶端JavaScript腳本中調用這個web方法。

接下來,讓我們開始創建下列web方法。

[WebMethod]
public static string[] GetSlides(){
string[] slides = new string[4];
slides[0] = "images/slide1.jpg";
slides[1] = "images/slide2.jpg";
slides[2] = "images/slide3.jpg";
slides[3] = "images/slide4.jpg";
return slides;

注意,這個GetSlides()是一個靜態方法,并且被標記有[WebMethod]屬性。它返回一個包含圖像URL的字符串數組。在這個示例中,我們對圖像URL進行了硬編碼,但是你可以很容易地把它修改為使用數據庫或任何其它方式來存儲圖像數據。

五、從JavaScript腳本中調用GetSlides() web方法

現在,既然我們已經準備好GetSlides() Web方法,那么接下來,我們需要從客戶端JavaScript腳本中調用它。現在,切換到Web頁面的HTML源視圖并且在web表單的<HEAD>節中添加下列<script>塊:

<script type="text/javascript">
function pageLoad(){
var img=$get("Image1");
img.style.visibility="hidden";
PageMethods.GetSlides(OnSuccess,OnError,OnTimeOut);
}
function OnSuccess(result){
slideshow.set_Slides(result);
slideshow.set_Delay(2000);
slideshow.Play();
}
function OnError(result){
alert(result.get_message());
}
function OnTimeOut(result){
alert(result);
}
</script>

任何時候當一個web表單加載到客戶端時,該<script>塊包含的pageLoad()函數將被AJAX框架自動調用。它非常類似于ASP.NET的服務器端Page_Load事件。在這個pageLoad()方法中,我們用于實現暫時的圖像隱藏。這樣做的目的是為了避免瀏覽器顯示不連續的圖像標識。然后,借助于內置的類—PageMethods,pageLoad()函數調用GetSlides() web方法。在ASP.NET AJAX中,所有的執行都是異步的,因此,GetSlides()方法將接受一個回調函數—在成功時執行OnSuccess;出現錯誤時執行OnError;而在超時條件下則執行OnTimeOut。

在此,OnSuccess()函數接受一個由GetSlides() web方法返回的字符串數組并且相應地設置SlideShow類的Slides屬性。然后,它把幻燈片的延遲播放時間設置為2000毫秒。最后,它調用SlideShow類的Play()方法開發播放幻燈片。

對于OnError()和OnTimeOut()方法,它們只用于簡單地顯示各自相應的錯誤消息。

接下來,按如下所示修改HTML按鈕控件標記:

<input id="Button1" ... onclick="slideshow.ShowFirst()" />

<input id="Button2" ... onclick="slideshow.ShowPrevious()" />

<input id="Button5" ... onclick="slideshow.Pause()"/>

<input id="Button6" ... onclick="slideshow.Play()"/>

<input id="Button3" ... onclick="slideshow.ShowNext()" />

<input id="Button4" ... onclick="slideshow.ShowLast()"/>

如你所見,這些按鈕的onclick事件簡單地調用SlideShow類的各個方法。
好了,至此,整個示例編寫結束!最后,按F5運行上面的web表單,你應該會看到我們的幻燈片在瀏覽器中開始播放了。

六、小結

再次想說的是,本文中的例子僅展示了微軟ASP.NET Ajax 1.0框架編程的非常基礎的一面,如果你真對這個框架感興趣,那么請抓緊動手試一下吧!

【編輯推薦】

  1. ASP.NET AJAX框架調用后臺代碼的基本方法
  2. ASP.NET AJAX1.0嘗鮮試用:Web Service調用
  3. 分清ASP.NET AJAX中的Extender和Behavior模型
  4. 使用ASP.NET AJAX訪問Script Method時啟用客戶端緩存

責任編輯:楊鵬飛 來源: 博客園
相關推薦

2009-02-09 17:45:12

Impressive播放幻燈片 SourceForg

2009-07-29 13:57:53

創建SlideShowASP.NET

2009-07-22 15:58:52

ASP.NET AJA

2011-07-13 17:09:34

WPS幻燈片

2010-01-27 08:44:56

ASP.NET MVC

2009-07-22 16:05:34

ASP.NET AJA

2009-07-22 16:25:41

ASP.NET AJA

2009-07-22 16:11:43

ASP.NET AJA

2009-07-24 13:41:15

ASP.NET AJA

2009-07-22 16:17:39

ASP.NET AJA

2020-10-15 06:00:22

LinuxLinux終端幻燈片

2013-06-25 11:21:35

Android開發幻燈片效果Gallery

2009-07-20 10:16:13

配置ASP.NET A

2009-07-29 13:50:26

UpdatePanelASP.NET

2009-07-31 13:24:43

ASP.NET AJA

2009-07-28 09:02:32

asp.net aja

2009-07-24 13:20:44

MVC框架ASP.NET

2014-06-30 09:22:38

ASP.NETBootstrap

2012-09-18 11:02:10

ASP.NETC#Web Forms

2009-01-03 08:41:51

Ajax無框架的AjaxASP.NET
點贊
收藏

51CTO技術棧公眾號

无套内谢丰满少妇中文字幕 | 日本一区二区乱| 亚洲图片欧美激情| 国产乱码一区| 久久久精品福利| 欧美电影《睫毛膏》| 精品国产自在久精品国产| 欧美日韩国产成人高清视频| 欧美极品jizzhd欧美仙踪林| 免费观看亚洲| caoporm超碰国产精品| 国产精品av电影| 黄色正能量网站| 黄色影院在线看| 久久久久久日产精品| 午夜精品久久久久久久白皮肤| 看看黄色一级片| 美女高潮视频在线看| 国产精品久久久久久久久免费樱桃| 国产 高清 精品 在线 a| 亚洲 小说区 图片区| 国产精品激情| 日韩在线观看你懂的| 一本色道综合久久欧美日韩精品| 国产成人免费视频网站视频社区 | 五月天中文字幕| 99精品国产在热久久下载| 精品国产一区二区三区久久狼黑人| 蜜臀av午夜一区二区三区| 午夜伦理在线| wwwwxxxxx欧美| 精品中文字幕在线观看| 亚洲码无人客一区二区三区| 成人激情综合| 五月天精品一区二区三区| 在线视频福利一区| www 日韩| 国产日韩欧美不卡在线| 国产精品视频入口| 亚洲黄色在线播放| 国产一区二区电影| 成人啪啪免费看| 一区二区日韩在线观看| 婷婷综合伊人| 中文字幕亚洲国产| 亚洲最大成人综合网| 亚洲第一二三区| 亚洲跨种族黑人xxx| 国产精品福利导航| 精品国产18久久久久久洗澡| 337p日本欧洲亚洲大胆色噜噜| 久久久精品人妻一区二区三区| 精品国模一区二区三区欧美 | 国产在视频线精品视频www666| 日韩av在线最新| 国产夫妻性爱视频| 欧美激情99| 亚洲欧美国产精品| 熟女少妇内射日韩亚洲| 日韩欧美午夜| www.欧美免费| 欧美三级在线免费观看| 国产一区二区三区亚洲| 亚洲精品一区二区三区福利 | 成年网站在线免费观看| 69久久久久| 国产精品网站导航| 中文有码久久| 欧美videosex性极品hd| 久久久精品影视| 欧美亚洲一级二级| 国产精品视频第一页| 精品一区二区三区欧美| 亚洲最大福利视频| 亚洲精品911| 99精品桃花视频在线观看| 久久久久久久有限公司| 福利在线观看| 亚洲三级电影网站| 欧美成人三级在线视频| 午夜欧美巨大性欧美巨大| 欧美日韩视频专区在线播放| 1314成人网| 欧美电影免费网站| 国产一区二区日韩精品欧美精品| 成人在线观看一区二区| 日韩精品导航| 色偷偷91综合久久噜噜| 久久久一二三区| 午夜在线视频观看日韩17c| 国产精品永久免费在线| 99精品国产99久久久久久97| 成人18精品视频| 性刺激综合网| 成人女同在线观看| 精品视频一区二区三区免费| 97中文字幕在线观看| 欧美热在线视频精品999| 另类天堂视频在线观看| 黄瓜视频在线免费观看| 国产综合久久久久久久久久久久 | 精品日韩免费| 欧美激情一区二区三区在线视频观看| 青青国产在线视频| 成人免费毛片嘿嘿连载视频| 亚洲成人网上| 九色porny视频在线观看| 欧美二区乱c少妇| 少妇饥渴放荡91麻豆| 中文不卡在线| 国产精品高潮呻吟视频| 日韩一区二区三区不卡| 国产98色在线|日韩| 欧洲一区二区在线观看| 福利写真视频网站在线| 欧美巨大另类极品videosbest| 老熟妇精品一区二区三区| 国产精品久久久久久久久久10秀| 91av在线网站| 亚洲精品久久久久久久久久久久久久| 亚洲国产高清在线| 国产综合免费视频| 好吊妞国产欧美日韩免费观看网站| 精品国模在线视频| 伊人久久中文字幕| 久久人人爽人人爽| 久久久久久免费看| 色悠久久久久综合先锋影音下载| 色爱av美腿丝袜综合粉嫩av| 久久久久在线视频| 99国产麻豆精品| 国产在线播放观看| youjizz亚洲| 欧美老少配视频| 国产精品人人爽| 亚洲图片欧美激情| 亚洲理论中文字幕| 久久精品免费一区二区三区| 国产精品欧美一区二区三区奶水 | xfplay精品久久| 女性女同性aⅴ免费观女性恋| 99a精品视频在线观看| 久久久久国色av免费观看性色 | 国产不卡视频在线播放| 国产一二三四五| 日韩欧美高清一区二区三区| 色综合色综合网色综合| 亚洲精品字幕在线| 亚洲高清在线精品| 欧美做受高潮中文字幕| 影音先锋亚洲电影| 久久久久国色av免费观看性色| 国产精品日韩无码| 一区二区三区在线播| 精品人妻一区二区三区四区在线 | 日韩欧美国产三级| www.99re7| 丁香亚洲综合激情啪啪综合| 青草视频在线观看视频| 日韩手机在线| 国产精品激情av电影在线观看 | 亚洲综合无码一区二区| 国产白袜脚足j棉袜在线观看| 91久久久久| 久久精品国产精品国产精品污 | 91精品国产免费久久综合| 国产精品三区在线观看| 成人免费av网站| 久久国产亚洲精品无码| 日韩欧美午夜| 国产91aaa| 在线成人av观看| 深夜福利一区二区| 性生活视频软件| 精品国产乱码久久久久久婷婷 | 亚洲色图二区| 国产日产精品一区二区三区四区 | 日本高清免费不卡视频| 婷婷丁香综合网| 国产精品18久久久| 那种视频在线观看| 日韩一区二区在线免费| 91九色蝌蚪成人| 中文字幕乱码在线播放| 欧美一区二区三区人| 国产一级片免费| 久久福利视频一区二区| 超碰人人爱人人| 首页亚洲中字| 91精品视频免费观看| 国产精品一区二区日韩| 色悠悠久久久久| 人人妻人人玩人人澡人人爽| 欧美在线一区二区三区| 精品无码人妻一区二区三区品| 久久久不卡影院| 国产成人精品一区二区在线小狼| 美女网站久久| 久久免费一区| www.久久草.com| 欧洲日本亚洲国产区| 久久久久久久久免费视频| 日韩精品黄色网| 国产成人av免费看| 在线亚洲一区二区| 日韩 欧美 亚洲| 综合激情成人伊人| 受虐m奴xxx在线观看| 国产在线不卡一卡二卡三卡四卡| 激情网站五月天| 激情av一区| 黄色a级在线观看| 国产欧美日韩免费观看| 国产日韩欧美二区| 日本一区二区三区播放| 国产精品精品一区二区三区午夜版| japanese色国产在线看视频| 久久久精品久久久| 天堂中文8资源在线8| 亚洲欧美日韩久久久久久| 欧美视频一二区| 日韩欧美久久久| 国产又爽又黄免费软件| 欧美在线制服丝袜| 日日骚av一区二区| 精品免费在线视频| 精品在线视频免费观看| 亚洲男人电影天堂| 三级黄色在线观看| 中文字幕欧美日本乱码一线二线| 午夜在线观看一区| 久久久久久一二三区| 国产乱了高清露脸对白| 成人精品亚洲人成在线| 中文字幕一二三| 国产精品一区二区x88av| 天天综合天天添夜夜添狠狠添| 日韩av中文字幕一区二区三区 | 电影网一区二区| 26uuu另类亚洲欧美日本一 | 久久久久久久久久久久久久久99| yjizz视频| 成人av在线影院| 日韩av无码一区二区三区不卡| 99视频精品| 黄网站欧美内射| 亚洲精品国产日韩| av动漫在线看| 午夜在线一区二区| 久久久国产欧美| 麻豆精品视频在线| 911福利视频| 国产在线精品一区二区| 毛毛毛毛毛毛毛片123| 国产成人免费视频网站 | 在线视频播放大全| 亚洲欧美另类小说| 中国一级片在线观看| 91亚洲精华国产精华精华液| jlzzjizz在线播放观看| 2023国产一二三区日本精品2022| 蜜桃无码一区二区三区| 国产精品系列在线| 久草综合在线视频| 亚洲成人777| 中文字幕日韩免费| 56国语精品自产拍在线观看| 国产91久久久| 欧美日韩成人在线一区| 国产精品视频a| 亚洲第一福利网| 韩国福利在线| 欧美另类在线播放| 亚洲国产福利| 国产综合香蕉五月婷在线| 91麻豆精品激情在线观看最新 | 久久人人88| 日韩久久久久久久久久久久| 精品一区在线| 中文字幕欧美日韩一区二区三区| 欧美午夜a级限制福利片| 777久久久精品一区二区三区| 蜜臀av一区二区| 国产性猛交96| 中文字幕精品—区二区四季| 久久久久久久国产精品毛片| 日韩欧美高清视频| 国产三级伦理片| 亚洲四色影视在线观看| 四虎精品在线| www.亚洲免费视频| 97人澡人人添人人爽欧美| 国产精品久久久久久av福利软件| 日韩视频一二区| 亚洲精品一区二| 亚洲狼人精品一区二区三区| 亚洲免费黄色网| 2023国产精品视频| 久久久久免费看| 精品视频在线视频| 亚洲色图欧美视频| 日韩激情在线视频| av片在线观看网站| 国产精品电影在线观看| 国产精品色呦| 欧美一级免费在线观看| 水野朝阳av一区二区三区| aaaaa黄色片| 中文字幕亚洲成人| 五月婷婷激情视频| 亚洲黄色片网站| 在线不卡日本v二区707| 国产精品入口福利| 免费成人av| 777精品久无码人妻蜜桃| 国产98色在线|日韩| 日本青青草视频| 欧美日韩精品三区| 超碰免费在线观看| 日韩av电影手机在线| 成人黄色视屏网站| 成人国产精品一区| 欧美日韩激情在线一区二区三区| 国产97在线 | 亚洲| 成人免费高清在线| 久久久久久久蜜桃| 日韩三级在线免费观看| 麻豆av在线导航| 国产日韩欧美在线| 日韩1区在线| 美女一区二区三区视频| 国产夜色精品一区二区av| 久久99国产综合精品免费| 亚洲精品福利资源站| 国产不卡人人| 久久免费一区| 老司机精品福利视频| 色婷婷av777| 一本久道中文字幕精品亚洲嫩 | 色av中文字幕一区| 国产成人77亚洲精品www| 午夜精品一区二区三区在线观看 | 国产精品一区二区电影| 欧美色图国产精品| 一区在线电影| 激情五月激情综合网| 欧美做爰啪啪xxxⅹ性| 日韩一级欧美一级| 日本大胆在线观看| 国产精品播放| 国产亚洲成人一区| 国产成人av一区二区三区不卡| 色狠狠桃花综合| 成年人免费在线视频| 国产欧美 在线欧美| 亚洲电影在线一区二区三区| 精品国产午夜福利在线观看| 亚洲一区二区三区免费视频| 亚州视频一区二区三区| 欧美一区二区三区艳史| 国产亚洲欧美日韩在线观看一区二区| 别急慢慢来1978如如2| 亚洲欧洲日本在线| 性中国xxx极品hd| 国产91对白在线播放| 欧美日韩色图| 一级黄色大片儿| 香蕉影视欧美成人| 国产视频网站在线| 91在线观看免费网站| 最新亚洲视频| 毛片网站免费观看| 欧美剧在线免费观看网站| ririsao久久精品一区| 水蜜桃亚洲一二三四在线| 国产一区二区在线观看视频| 日本视频www| 一区二区成人精品| 日本在线视频一区二区三区| 1024av视频| 亚洲日本乱码在线观看| 亚洲av成人精品毛片| 成人福利在线观看| 国产精品一二| 日韩一区二区不卡视频| 日韩av在线免播放器| 福利一区二区免费视频| 日本一本中文字幕| 欧美激情中文不卡| 日本毛片在线观看| 国产美女精品免费电影| 99热这里只有精品8| 韩国一级黄色录像| 亚洲精品综合久久中文字幕| 高清不卡一区| 国产情侣av自拍| 亚洲成人一区在线| 黄色动漫在线观看| 欧美日韩最好看的视频| 国产xxx精品视频大全|