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

XML
XML简易教程之四
XML与HTML的结合(上)
XML与HTML的结合(下)
XML入门的常见问题(一)
XML入门的常见问题(二)
XMLHTTP资料
什么是XML
什么是 XML Web Service
XML正在接管Web服务 成为SOA的基础
怎么样在网页上读取远程xml的数据
XML教程—编写结构完整的XML文档
读写xml文件的2个小函数
XML文档的基本操作
初学者如何开发出一个高质量的J2EE系统
优化 JavaScript 代码
自动更新程序的设计框架
使Firefox对XML的处理兼容IE的节点处理方法
WML学习之四 锚和任务
WML学习之五 显示表单
WML学习之六 事件

XML入门教程:XML DHTML 行为


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 42 ::
收藏到网摘: 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>