ASP实用大全-ASP服务器组件(3)
发表时间:2024-02-09 来源:明辉站整理相关软件相关文章人气:
[摘要]浏览器性能组件 对于ASP的扩展组件,有些大家已耳熟能详,有些则还陌生的很,写这篇文章的的意图无非想抛砖引玉,在各位对ASP几大对象已烂熟于心时,不妨玩玩一些不常用的可扩展组件,相信会对各位的ASP编程有很大的启发。(这篇文章的内容来自MSDN,对其了若指掌的朋友自不必看。还有,小妹的耐 ...
浏览器性能组件
对于ASP的扩展组件,有些大家已耳熟能详,有些则还陌生的很,写这篇文章的的意图无非想抛砖引玉,在各位对ASP几大对象已烂熟于心时,不妨玩玩一些不常用的可扩展组件,相信会对各位的ASP编程有很大的启发。(这篇文章的内容来自MSDN,对其了若指掌的朋友自不必看。还有,小妹的耐 心不好,如果写完了这篇没有长性就此罢笔,望各位在大骂的时候留点口德,多谢多谢。):b
[center]Browser Capabilities Component——浏览器性能组件[/center]
浏览器性能组件创建一个浏览器类型(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,其余为字符串