当前位置: 首页 > 图文教程 > XML家族 > XML > XML入门教程:XML DHTML 行为

XML
XML入门教程:使用CSS显示XML
XML入门教程:XML 浏览器支持
WEB中基于XMLHTTP的简单实例分析
基于AJAX技术实现Struts校验框架
Java中四种XML解析技术之不完全测试
高手简论:说说标签切换应用原则
使用Ajax时的十个常犯的错误
ajax代理程序自动判断字符编码
高效交换XML文档
读取XML为行记录
如何建立一个 XML 的开发环境
十分钟学会 xajax
基于AJAX技术提高搜索引擎排名
XML时代我们拥有.Net
更正用AJAX实现IE TREE无刷新取值的方法
利用XSLT来换XML的根
开发保留标准的浏览器功能的AJAX应用
用XML+VBS在ASP中实现报表的打印
建立MS XML 测试环境
XML入门精解之文件格式定义

XML入门教程:XML DHTML 行为


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 39 ::
收藏到网摘: n/a

Internet Explorer 5引入了DHTML行为。行为(Behaviors)是一种借助CSS的便利性向HTML元素添加DHTML功能性的方法。

行为 - 什么是行为?

IE 5引入了DHTML行为(DHTML behaviors)。行为(Behaviors)是一种借助CSS的便利性向HTML元素添加DHTML功能性的方法。

行为如何工作呢?通过使用XML,我们可以把行为链接到网页中的任何元素,并对元素进行操作。

DHTML行为不使用<script>标签,它们使用的是名为"behavior"的CSS属性。"behavior"规定了指向某个HTC文件的URL,此文件含有实际的行为(HTC文件使用XML编写)。

语法:

behavior: url(some_filename.htc)

注释:behavior属性被IE 5以及更高的版本支持,其他所有的浏览器都会忽略它。这意味着Mozilla、Firefox、Netscape以及其他浏览器只能识别常规的内容,而只有IE 5+可以看到DHTML behaviors。

实例

下面的HTML文件拥有一个<style>元素,其中定义了针对<h1>元素的行为:

XML文档"behave.htc"如下:

以下为引用的内容:
<attach for="element" event="onmouseover" handler="hig_lite" />
<attach for="element" event="onmouseout" handler="low_lite" />
<script type="text/javascript">
function hig_lite()
{
element.style.color='red'
}
function low_lite()
{
element.style.color='blue'
}
</script>

behavior文件含有一段JavaScript,以及用于脚本的事件处理程序。

TIY (请把鼠标放到例子中的文本上面)。

下面的HTML文件拥有一个<style>元素,其中定义了针对拥有id为"typing"的元素的行为:

以下为引用的内容:
<html>
<head>
<style type="text/css">
#typing
{
behavior:url(typing.htc);
font-family:'courier new';
}
</style>
</head>
<body>
<span id="typing" speed="100">IE5 introduced DHTML behaviors.
Behaviors are a way to add DHTML functionality to HTML elements
with the ease of CSS.<br /><br />How do behaviors work?<br />
By using XML we can link behaviors to any element in a web page
and manipulate that element.</p>
</span>
</body>
</html>

XML文档"typing.htc"如下:

以下为引用的内容:

<attach for="window" event="onload" handler="beginTyping" />
<method name="type" />
<script type="text/javascript">
var i,text1,text2,textLength,t
function beginTyping()
{
i=0
text1=element.innerText
textLength=text1.length
element.innerText=""
text2=""
t=window.setInterval(element.id+".type()",speed)
}
function type()
{
text2=text2+text1.substring(i,i+1)
element.innerText=text2
i=i+1
if (i==textLength){clearInterval(t)}
}
</script>