`
morfil
  • 浏览: 49733 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

*.htc 文件的简单介绍

阅读更多

从5.5版本开始,Internet Explorer(IE)开始支持Web 行为的概念。这些行为是由后缀名为.htc的脚本文件描述的,它们定义了一套方法和属性,程序员几乎可以把这些方法和属性应用到HTML页面上的任何元素上去。Web 行为是非常伟大的因为它们允许程序员把自定义的功能“连接”到现有的元素和控件,而不是必须让用户下载二进制文件(例如ActiveX 控件)来完成这个功能。Web 行为还是推荐的扩展IE对象模型和控件集的方法。微软在它的开发者站点上的DHTML 行为库栏目里提供了几个定制的Web行为。本文中讨论一个比较新的Web 行为:WebService行为。

Web 服务是通过一个开放的简单对象访问协议(SOAP)来传递参数和接收返回值,以便在Web上提供接口无关的软件服务的方法。在Internet上有许多例子和文章帮助你创建Web 服务并从传统的基于窗口表单的应用程序或者在服务器端来使用这些Web 服务,但是也可以使用WebService 行为也可以在客户浏览器上使用Web 服务。

从客户浏览器调用一个Web 服务的好处包括能够得到服务器更快的响应时间,结果是生成交互能力更强的页面并让用户用起来更高兴。与传统的将表单发回服务器然后接收一个新的页面不同的是(这个过程包括重新下载图片和其它的内容),WebService行为使用XMLHTTP在后台只发送和接收与事务处理过程相关的内容,然后这些内容又可以通过DHTML和脚本进行显示。

我所知道的目前支持Web 行为的唯一一个浏览器是IE;开发者们知道避免使用只能在IE上使用的功能。但是W3C在工作草案里有这个CSS的扩展以作为未来的标准。

如果你决定现在就使用Web 行为,你可以使用下面的JavaScript函数来检测客户端是否支持这个功能:

js 代码
  1. function canUseBehaviors() {   
  2.     var ua = window.navigator.userAgent;   
  3.     var msiePos = ua.indexOf('MSIE');   
  4.     var msieVer = 0;   
  5.     var behaviorsAvailable = false;   
  6.     var iHandle = 0;   
  7.     if (msiePos >= 0) {   
  8.         msieMajorVer = parseInt(ua.charAt(msiePos + 5));   
  9.         msieMinorVer = parseInt(ua.charAt(msiePos + 7));   
  10.         if (msieMajorVer >= 5) {   
  11.             if (((msieMajorVer == 5) && (msieMinorVer >= 5)) ||   
  12.             (msieMajorVer > 5)) {   
  13.             behaviorsAvailable = true;   
  14.             }   
  15.         }   
  16.     }   
  17.     return behaviorsAvailable;   
  18. }  

使用上面的函数,你可以在运行时确定是否能够使用WebService 行为来调用Web 服务并使用IE的DHTML功能来显示结果或者是把这个表单发送给服务器让服务器来完成必要的操作,然后再次生成一个完整的页面。使用CSS语法来为一个元素添加WebService行为不会影响不支持特定CSS属性的浏览器。

微软提供了一个很好的参考,程序员可以用它更好的熟悉从客户端访问Web 服务。开发者还可以在微软的站点上找到必要的HTML 组件(*.htc)文件。

有了客户端工具包中的WebService行为,开发者们可以为Web 消费者创建更丰富更具交互性的页面,它们与使用大型主机提供的Web 服务或者基于表单窗口的应用程序的企业用户的功能是一样的。这将帮助消除冗余的代码并能通过为服务提供的特定功能提高响应时间来增强用户体验的快感。

例子:《用htc文件,为按钮添加 link 和 target 属性》

  做WEB程序的时候经常需要用一个按钮来跳转到一个页面,或打开新窗口;由于按钮没有link属性,所以经常要写脚本来控制,感觉有些麻烦,最近看了一些关于htc的文档,发现htc可以为按钮添加属性,所以就写了个例子。

【文件:test.htm】

xml 代码
  1. <link href="style.css" rel="stylesheet" type="text/css">  
  2. <input type=button link="http://www.sina.com.cn" value="打开新浪">  
  3. <input type=button link="http://www.sina.com.cn" value="新窗口打开新浪" target="_blank">  

【文件:style.css】

css 代码
  1. input {   
  2.   behavior:url("input.htc");   
  3. }  

【文件:input.htc】

js 代码
  1. <public:component>   
  2. <!--添加连接-->   
  3. <public:property name="link" value="" />   
  4. <!--添加是否在新窗口打开属性-->   
  5. <public:property name="target" value="" />   
  6. <script>   
  7.     if(this.onclick == null) {   
  8.         onclick = function() {   
  9.             if (link != "") {   
  10.                 if (target == "_blank") {   
  11.                     window.open(link);    
  12.                 } else {   
  13.                     location.href = link;   
  14.                 }   
  15.             }   
  16.         };   
  17.     };   
  18. </script>   
  19. </public:component>  

  把上面的代码分别保存,放在同一个目录下就可以了,以后只要引入了style.css,那么页面中的按钮就多了两个属性link,target。
 
  如果你设置了按钮的onclick属性,那么link属性就不执行了,毕竟默认的属性优先。

  • detect.rar (738 Bytes)
  • 描述: 检测浏览器是否支持Web行为
  • 下载次数: 30
分享到:
评论

相关推荐

    让IE6支持png半透明图片(支持背景平铺、定位)

    &lt;/style&gt;3 到这里要注意两个文件的路径,一个是我们引用的 iepngfix.htc 文件,另一个是 iepngfix.htc 文件中 blank.gif 的路径,要根据你自己网站的目录结构来调整。 4 如果想使用背景平铺和定位的效果,以前的...

    rar压缩软件.rar

    在 c:\*.rar 压缩文件中的 *.txt 文件执行区分大小写的 "first level" 字符串的搜索 2) rar ih=f0e0aeaeab2d83e3a9 -r e:\text 在 e:\text 目录下的 rar 压缩文件中搜索十六进制字符串 f0 e0 ae ae ab 2d 83 ...

    完美解决IE6不支持hover的方法

    hover”的支持不理想,对于类似的“p:hover”、“img:hover”、“#header:hover”...,今天给大家介绍一种新的方法,可以完美解决IE6不支持hover的情况,用法很简单,将下载后的“csshover.htc”文件,定义在body样式...

    《浩海网络多格式播放器》V3.9.4.1

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    《浩海网络多格式播放器》V3.9.4.4

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    《浩海网络多格式播放器》V3.9.4.5

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    《OceanX》播放器 Prv0.33

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    HTC EVO 4G 写号

    HTC EVO 4G烧号图文教程手机烧号全过程 浏览: 16881 | 更新: 2012-01-11 15:28 | 标签: htc . 17 4 . 全文阅读 分步阅读 步骤 1 2 3 4 5 6 7 8 HTC EVO 4G烧号图文教程 手机...

    JAVA上百实例源码以及开源项目

    8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一个目标文件 摘要:Java源码,网络相关,浏览器  Java编写的HTML浏览器源代码,一个很简单甚至不算是...

    unruu:提取HTC RUU的

    ru unruu是一个简单的命令行实用程序,可从HTC RUU更新可执行文件中提取rom.zip文件。 请注意,它将rom.zip文件输出到您的当前目录。要求(libunshield v0.9或更高版本): $ git clone ...

    G10一键刷入RecoveryHTC Desire HD

    1、方便、快捷简单的刷入Recovery,提取Recovery的IMG文件放入即可(名称中不可有空格); 2、一键刷入、可以自己设定是否需要进入Recovery验证; 3、自动修正Recovery的IMG文件名称; 4、自动操作,只需在电脑端...

    ROM文件查看和修改工具

    1、最简单的,查看NBH文件里包含的内容。 咱们现在的机子都已刷过HARDSPL,俗称解锁; 都说是不死之身, 其实不然,是可以随意刷纯OS的ROM、没错,但如果ROM里包含SPL或IPL, 而这SPL和你机子不对应,就会出意外。...

    《OceanX》播放器 Prv0.3

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    《OceanX》播放器 Prv0.34

    2,全新增加图片格式文件支持(*.bmp;*.jpg;*.gif;*.jpge;*.png 等)为V4.0播放器抛下伏笔3,全面解决V3.8系列播放器左上角在有些系统上出现视频窗口的严重BUG!4,全新的版权保护机制!彻底改善V3.8系列保护机制...

    JAVA上百实例源码以及开源项目源代码

    Java从网络取得文件 1个目标文件 简单 Java从压缩包中提取文件 1个目标文件 简单 Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板 使用Java语言编写的一款...

    javascript 调用Web service

    本示例是用微软提供的webservice.htc来完成的,当然用ASP.NET AJAX也能实现,但该示例全部是JAVASCRIPT来做的,简单明了.

Global site tag (gtag.js) - Google Analytics