浏览器性能组件

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

对于ASP的扩展组件,有些大家已耳熟能详,有些则还陌生的很,写这篇文章的的意图无非想抛砖引玉,在各位对ASP几大对象已烂熟于心时,不妨玩玩一些不常用的可扩展组件,相信会对各位的ASP编程有很大的启发。(这篇文章的内容来自MSDN,对其了若指掌的朋友自不必看。还有,小妹的耐 心不好,如果写完了这篇没有长性就此罢笔,望各位在大骂的时候留点口德,多谢多谢。):b

Browser Capabilities Component——浏览器性能组件

浏览器性能组件创建一个浏览器类型(BrowserType)对象用以向你的脚本描述客户端浏览器能力。

一旦一个浏览器连接到Web服务器,浏览器会自动将一串用户代理HTTP报头(User Agent HTTP Header)传送到服务器。该报头为一ASCII字符串用以识别该浏览器及其版本号。浏览器类型(BrowserType)对象将该报头与Browsercap.ini文件中的条目进行比较。

如果找到匹配的条目,浏览器类型(BrowserType)对象假设该浏览器具备Browsercap.ini文件中所描述的属性。

如果对象没有在Browsercap.ini文件中找到与报头匹配的条目,浏览器类型(BrowserType)对象假设该浏览器具备默认浏览器的属性。如果没有匹配条目并且Browsercap.ini文件没有定义默认浏览器的各项设置,则浏览器类型(BrowserType)对象将该浏览器的各项属性值赋为“Unkown”。

通过升级Browsercap.ini文件,你可以方便的把浏览器属性或者对新浏览器的描述加入到这个组件(稍候介绍如何升级Browsercap.ini文件)。

文件名

Browsercap.dll 浏览器性能组件

Browsercap.ini 一个用以描述浏览器属性的文本文件,该文件必须和Brwosercap.dll文件处于同一目录下

语法

Set BrowserType = Server.CreateObject("MSWC.BrowserType")

参数

BrowserType——用Server.CreateObject语句创建的浏览器类型(BrowserType)对象的名字

注册条目

无需注册

例子

以下例子给出如何用浏览器性能组件取得当前浏览器一些属性。

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

<table border=1>

<tr><td>Browser</td><td> <%= bc.browser %> </td></TR>

<tr><td>Version</td><td> <%= bc.version %> </td></TR>

<tr><td>Frames</td><td>

<% if (bc.frames = TRUE) then %> TRUE

<% else %> FALSE

<% end if %> </td></TR>

<tr><td>Tables</td><td>

<% if (bc.tables = TRUE) then %> TRUE

<% else %> FALSE

<% end if %> </td></TR>

<tr><td>BackgroundSounds</td><td>

<% if (bc.BackgroundSounds = TRUE) then %> TRUE

<% else %> FALSE

<% end if %> </td></TR>

<tr><td>VBScript</td><td>

<% if (bc.vbscript = TRUE) then %> TRUE

<% else %> FALSE

<% end if %> </td></TR>

<tr><td>JScript</td><td>

<% if (bc.javascript = TRUE) then %> TRUE

<% else %> FALSE

<% end if %> </td></TR>

</table>

Browscap.ini文件

你可以在Browscap.ini文件中描述任意多个浏览器的属性。你也可以设置一套默认属性,当浏览器发送的报头无法和Browscap.ini中的任何条目匹配时,浏览器类型(BrowerType)对象会假设该浏览器具备默认的属性。

每个浏览器定义由一个HTTP报头、一些属性名以及相关属性值构成。关于各种浏览器的HTTP报头的定义可参考[link]http://www.w3.org/[/link]网站中的内容。

语法

[; comments]

[HTTPUserAgentHeader]

[parent = browserDefinition]

[property1 = value1]

...

[propertyN = valueN]

[Default Browser Capability Settings]

[defaultProperty1 = defaultValue1]

...

[defaultPropertyN = defaultValueN]

||||||参数

comments

注释,以;开头的任意多行

HTTPUserAgentHeader

HTTP用户代理报头,类似于以下格式[Mozilla/2.0 (compatible; MSIE 3.0;* Windows 95)],其中可以使用通配符*。

browserDefinition

用以定义父类的HTTP报头

propertyN

浏览器的属性名,可从属性列表中选取所需的属性(详细列表见附录)

valueN

浏览器的属性值

defaultPropertyN

默认浏览器的属性名,可选属性同propertyN

defaultValueN

默认浏览器的属性值

例子

;;ie 4.0

[IE 4.0]

browser=IE

Version=4.0

frames=TRUE

tables=TRUE

cookies=TRUE

backgroundsounds=TRUE

vbscript=TRUE

javascript=TRUE

javaapplets=True

ActiveXControls=TRUE

beta=False

;;ie 4.01

[Mozilla/2.0 (compatible; MSIE 4.01*; Windows 95)]

parent=IE 4.0

version=4.01

minorver=01

platform=Win95

; Default Browser

[Default Browser Capability Settings]

browser=Default

frames=FALSE

tables=TRUE

cookies=FALSE

backgroundsounds=FALSE

vbscript=FALSE

javascript=FALSE

附录——浏览器属性列表

属性名

描述

ActiveXControls

指定浏览器是否支持ActiveX控件

backgroundsounds

指定浏览器是否支持背景音乐

beta

指定浏览器是否是测试版

browser

指定浏览器的名字

cdf

指定浏览器是否支持Web发布的频道解释定义(Channel Definition Format)

cookies

指定浏览器是否支持cookies

frames

指定浏览器是否支持帧显示

Javaapplets

指定浏览器是否支持Java applets

javascript

指定浏览器是否支持Javascript

platform

指定浏览器运行所需的操作系统

tables

指定浏览器是否支持表格

vbscript

指定浏览器是否支持vbscript

version

指定浏览器的版本

注:以上解释内容为“指定浏览器是否支持”开头的属性,其属性值应为True/False,其余为字符串

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航