ASP 瀏覽器功能



ASP Browser Capabilities 元件

ASP Browser Capabilities 元件會建立一個 BrowserType 對象,這個物件可測定訪客瀏覽器的類型、效能和版本號碼。

當瀏覽器連接到伺服器時,就會傳送一個 HTTP User Agent 標頭到伺服器。這個報頭包含關於瀏覽器的資訊。

BrowserType 物件會將標頭中的資訊與伺服器上名為 "Browscap.ini" 的檔案中的資訊做比較。

如果標頭中的瀏覽器類型和版本號與 "Browsercap.ini" 檔案中資訊匹配,那麼我們就可以使用 BrowserType 物件列出這個匹配的瀏覽器的相關屬性。如果上述情況不匹配,這個物件會把每個屬性設為 "UNKNOWN"。

語法

<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>


#ASP Browser Capabilities 實例

下面的實例會在ASP 檔案中建立一個BrowserType 對象,並顯示目前瀏覽器效能的一些資訊:

#實例

<!DOCTYPE html>
<html>
<body>
<%
Set MyBrow=Server.CreateObject("MSWC.BrowserType")
%>

<table border="0" width="100%">
<tr>
<th>Client OS</th><th><%=MyBrow.platform%></th>
</tr><tr>
<td >Web Browser</td><td ><%=MyBrow.browser%></td>
</tr><tr>
<td>Browser version</td><td><%=MyBrow.version%></td>
</tr><tr>
<td>Frame support?</td><td><%=MyBrow.frames%></td>
</tr><tr>
<td>Table support?</td><td><%=MyBrow.tables%></td>
</tr><tr>
<td>Sound support?</td><td><%=MyBrow.backgroundsounds%></td>
</tr><tr>
<td>Cookies support?</td><td><%=MyBrow.cookies%></td>
</tr><tr>
<td>VBScript support?</td><td><%=MyBrow.vbscript%></td>
</tr><tr>
<td>JavaScript support?</td><td><%=MyBrow.javascript%></td>
</tr>
</table>

</body>
</html>

運行實例»

點擊"運行實例"按鈕查看線上實例

##輸出:

Client OSWinNT#Web BrowserIEBrowser version5.0Frame support?True Table support?TrueSound support?True##Cookies support?VBScript support?JavaScript support?

Browscap.ini 檔案

"Browscap.ini" 檔案用於宣告屬性,並設定各瀏覽器的預設值。

這部分內容不是關於如何維護 Browscap.ini 檔案的教程,我們只提供一些關於 "Browsercap.ini" 的基礎知識和概念,讓您對該文件有個大概的了解。

"Browscap.ini" 檔案可包含以下的資訊:

[;comments]
[HTTPUserAgentHeader]
[parent=browserDefinition]
[property1 =value1]
[propertyN=valueN]
[Default Browser Capability Settings]
[defaultProperty1=defaultValue1]
[defaultPropertyN=defaultValueN]

True
True
True
##參數描述comments可選項。任何起始於分號的程式碼行都會被 BrowserType 物件忽略。 HTTPUserAgentHeader#可選項。規定與在 propertyN 中設定的 browser-property 值聲明相關的 HTTP User Agent 標頭。允許使用通配符。 #Version - 規定瀏覽器的版本號碼valueN可選項。規定 propertyN 的值。可為字串、整數(前綴帶 #)或布林值。 defaultPropertyN
#N=defaultValueN]
  • browserDefinition

  • #可選項。規定作為父瀏覽器使用的某個瀏覽器的 HTTP User Agent header-string。目前瀏覽器的定義會繼承在父瀏覽器的定義中所有宣告過的屬性值。
  • propertyN
  • 可選項。規定瀏覽器的屬性。下面的表格列出了某些可能的屬性:

  • ActiveXControls - 支援 ActiveX® 控制項?

  • Backgroundsounds - 支援背景聲音?

  • Cdf - 支援針對網路廣播的頻道定義格式?

  • Tables - 支援表格?

  • Cookies - 支援 cookies?

  • Frames - 支援框架?

  • Javaapplets - 支援 Java applets?

  • Javascript - 支援 JScript?

  • Vbscript - 支援 VBScript?

  • Browser - 規定瀏覽器的名稱

Beta - 瀏覽器是否為 beta 軟體?
Platform - 規定瀏覽器執行的平台
###可選項。規定瀏覽器屬性的名稱,假如已定義的 HTTPUserAgentHeader 值中沒有值能與瀏覽器傳送的 HTTP User Agent 標頭相匹配,則為這個屬性指派一個預設的值。 ############defaultValueN######可選項。規定 defaultPropertyN 的值。可為字串、整數(前綴帶 #)或布林值。 ############

"Browscap.ini" 檔案可能如下所示:

;IE 5.0
[IE 5.0]
browser=IE
Version=5.0
majorver= #5
minorver=#0
frames=TRUE
tables=TRUE
cookies=TRUE
backgroundsounds=TRUE
vbscript=TRUE
javascript=TRUE
javaapplets= TRUE
ActiveXControls=TRUE
beta=False

;預設瀏覽器
[*]
browser=預設
frames=FALSE
tables=TRUE
cookies =FALSE
#backgroundsounds=FALSE
#vbscript=FALSE
javascript=FALSE