- 資訊首頁(yè) > 開(kāi)發(fā)技術(shù) > web開(kāi)發(fā) > ASP >
- ASP基礎入門(mén)第二篇(ASP基礎知識)
本篇將繼續介紹一些用 ASP 編寫(xiě)的WEB 動(dòng)態(tài)功能。由于 WEB 瀏覽器標準的不一致從而使得如何能夠讓自己制作的網(wǎng)站去適應各種不同的瀏覽器成為了廣大網(wǎng)站設計者最為頭疼的事,在如今的形勢之下,我們不肯也不可能去拋棄Netscape 或 IE 中的任何一種客戶(hù)群,但我們有時(shí)候又不得不去考慮客戶(hù)端瀏覽器的實(shí)際瀏覽效果,過(guò)去我們常用JavaScript 編寫(xiě)一段程序來(lái)辨別客戶(hù)端使用的不同的瀏覽器,那么今天就讓我們來(lái)看看如何使用ASP 更為便捷且精確地達到這一目的。將以下代碼,剪貼到你的Notebook 中,并保存為browser.asp 。
< %@ LANGUAGE = VBScript %> < HTML> < HEAD> < TITLE>用ASP提供的瀏覽器性能組件來(lái)辨別客戶(hù)瀏覽器< /TITLE> < /HEAD> < BODY BGCOLOR="White" topmargin="10" leftmargin="10"> < font size="4" face="Arial, Helvetica"> < b>用ASP提供的瀏覽器性能組件來(lái)辨< br>別客戶(hù)瀏覽器< /b>< /font>< br> < hr size="1" color="#000000"> < !-- 定義并創(chuàng )建瀏覽器性能對象 --> < % Dim bc Set bc = Server.CreateObject("MSWC.BrowserType") %> < !-- 在表格中描述客戶(hù)瀏覽器的信息 --> < Table border=1> < tr> < td>Browser Name< /td> < td> < %=bc.Browser %> < /Td> < tr> < td>Browser Version< /td> < td> < %=bc.Version %> < /Td> < tr> < td>Major Version< /td> < td> < %=bc.Majorver %> < /Td> < tr> < td>Minor Version< /td> < td> < %=bc.Minorver %> < /Td> < tr> < td>Frame Support< /td> < td> < %=bc.Frames %> < /Td> < tr> < td>Table Support< /td> < td> < %=bc.Tables %> < /Td> < tr> < td>Cookie Support< /td> < td> < %=bc.Cookies %> < /Td> < tr> < td>Background Sound Support< /td> < td> < %=bc.BackgroundSounds %> < /Td> < tr> < td>VBScript Support< /td> < td> < %=bc.VBScript %> < /Td> < tr> < td>JavaScript Support< /td> < td> < %=bc.JavaScript %> < /Td> < /table> < /BODY> < /HTML>
用http 方式瀏覽該文件,根據使用的瀏覽器的不同,你會(huì )看到類(lèi)似下圖 (Asp2b.gif) 的頁(yè)面。在本例中我們用到了一個(gè) ASP 提供的 ActiveX 組件 --"Browser Capabilities" 。 ActiveX 組件作為基于 Web 的應用程序部分在 Web 服務(wù)器上運行,組件提供了應用程序的主要功能 ( 如訪(fǎng)問(wèn)、修改數據庫等 ) ,這樣 WEB 設計者們就不必創(chuàng )建或重新創(chuàng )建執行這些任務(wù)的代碼,從而提高了工作的效率,有關(guān) ActiveX 組件將在今后詳細討論。為了使用 ASP 辨別客戶(hù)瀏覽器,在這里我們利用 "Browser Capabilities" 組件創(chuàng )建了一個(gè) Browser Type 對象,該對象提供帶有客戶(hù)端網(wǎng)絡(luò )瀏覽器功能說(shuō)明的用戶(hù)腳本,當瀏覽器連接到網(wǎng)絡(luò )服務(wù)器上時(shí),它會(huì )自動(dòng)發(fā)送一個(gè) UserAgentHTTP 標題,該標題是一個(gè)聲明瀏覽器及其版本的 ASCII 字符串。此 Browser Type 對象將該標題和在 Browscap.ini 文件中的項進(jìn)行比較 (Win98 、 IIS3 、 IIS4 的用戶(hù)分別可以在以下目錄中 "win98\system\inersrv" 、 "\winnt\system32\inetsrv\asp\cmpnts" 、 "\winnt\system32\inetsrv" 找到該文件 ) 。如果找到匹配的項,則該 Browser Type 對象將認為瀏覽器列表屬性與 UserAgent 標題匹配。若該對象在 browscap.ini 文件中找不到與該標題匹配的項,那么將使用默認的瀏覽器屬性。若該對象既未找到匹配項且 browscap.ini 文件中也未指定默認的瀏覽器設置,則它將每個(gè)屬性都設為字符串 "UNKNOWN" 。我們可以通過(guò)更新 browscap.ini 文件將屬性或新的瀏覽器定義添加到該組件中,從而擴大 ASP 識別的瀏覽器范圍和精確度。下面列出了 browscap.ini 中的一部分內容 ( 不包括注釋部分 ) :
[IE 4.0] ;;HTTPUserAgentHeader
browser=IE ;;指定該瀏覽器的名稱(chēng)。
Version=4.0 ;;指定該瀏覽器的版本號。
majorver=4 ;;指定主版本號
minorver=0 ;;指定副版本號
frames=TRUE ;;指定該瀏覽器是否支持框架。
tables=TRUE ;;指定該瀏覽器是否支持表格。
cookies=TRUE ;;指定該瀏覽器是否支持cookies。
backgroundsounds=TRUE ;;指定該瀏覽器是否支持背景音樂(lè )。
vbscript=TRUE ;;指定該瀏覽器是否支持VBScript。
javascript=TRUE ;;指定該瀏覽器是否支持JScript。
javaapplets=TRUE ;;指定該瀏覽器是否 支持 Java程序。
ActiveXControls=TRUE ;;指定該瀏覽器是否支持 ActiveX 控件。
Win16=False ;; 指定該瀏覽器是否支持Win16
beta=False ;;指定該瀏覽器是否測試版。
cdf=True ;;指定該瀏覽器是否 支持用于 Web 預測的 Channel Definition Format。
;;ie 4.01
[Mozilla/4.0 (compatible; MSIE 4.01*; Windows 95)]
parent=IE 4.0 ;;父標簽允許第二個(gè)瀏覽器繼承第一個(gè)瀏覽器的定義
version=4.01
minorver=01
platform=Win98
;;Default Browser ;;指定默認的瀏覽器的設置
[Default Browser Capability Settings]
browser=Default
frames=FALSE
tables=TRUE
cookies=FALSE
backgroundsounds=FALSE
vbscript=FALSE
javascript=FALSE
在上面的例子中,父標簽允許第二個(gè)瀏覽器繼承第一個(gè)瀏覽器的定義,以便 Microsoft Internet Explorer4.01 定義得以繼承 Microsoft Internet Explorer4.0 定義全部的屬性 ( 例如, frames=TRUE 、 tables=TRUE 以及 cookies=TRUE) 。并通過(guò)添加 platform=Win98 行來(lái)指定平臺,用 version=4.01 重寫(xiě)版本信息。
在先前的 browser.asp 中我們僅僅是將客戶(hù)瀏覽器的屬性一一羅列了出來(lái),下面讓我們添加一些動(dòng)態(tài)的效果。將以下代碼剪貼到文件 browser.asp 中( 編輯注 :為顯示方便,所有“ < ”符號后都多加了個(gè)空格,實(shí)際使用時(shí)請注意去掉。 ):
< % if (bc.frames = TRUE) then %> 你的瀏覽器支持框架!< br> < % else %> 難道現在你還在使用不支持框架的瀏覽器???< br> < % end if %> < % if (bc.tables = TRUE) then %> 你的瀏覽器支持表格。< br> < % else %> 難道現在你還在使用不支持表格 的瀏覽器 ???< br> < % end if %> < % if (bc.BackgroundSounds = TRUE) then %> 有沒(méi)有聽(tīng)到美妙的 音樂(lè )???< br> < % else %> 可惜 , 您的瀏覽器不支持背 景音樂(lè )。< br> < % end if %> < % if (bc.vbscript = TRUE) then %> 您的瀏覽器支持Vbscript。< br> < % else %> 您的瀏覽器不支持Vbscrip。< br> < % end if %> < % if (bc.javascript = TRUE) then %> 您的瀏覽器支持 Javascript。< br> < % else %> 您的瀏覽器不支持 Javascript。< br> < % end if %>
在你的瀏覽器中刷新 browser.asp ,程序將自動(dòng)辨別瀏覽器的屬性并動(dòng)態(tài)顯示不同的信息。不難發(fā)現在整個(gè) browser.asp 文件中幾乎沒(méi)有用到任何復雜的編程,就輕而易舉的達到了動(dòng)態(tài)鑒別客戶(hù)瀏覽器并動(dòng)態(tài)產(chǎn)生響應事件的效果。事實(shí)上,這個(gè)程序的關(guān)鍵就在于前文提到的 ActiveX 組件 --"Browser Capabilities" ,它的作用類(lèi)似于一個(gè) Function ,只需簡(jiǎn)單地在程序中調用該組件即能達到你所希望的效果。
通過(guò)這兩篇對ASP 的介紹,大家已經(jīng)看到編寫(xiě)ASP 程序是相當輕松的,要掌握 ASP ,無(wú)非就是掌握 ASP 內置的五個(gè)對象,以及ASP 提供的ActiveX 組件的對象、方法和屬性,當然扎實(shí)的腳本語(yǔ)言編寫(xiě)能力也是必須的。在今后的文章中小編將用五到六篇的篇幅著(zhù)重介紹這些內置對象和組件的作用及使用方法,敬請關(guān)注。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站