网页教学网
 当前位置: 网页教学网 >> 网页制作 >> XML技术应用 >> 阅读:XML入门教程:XML DHTML 行为
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

XML入门教程:XML DHTML 行为

http://www.webjx.com  更新日期:2007-06-30 21:10  出处:网页教学网  作者: 收藏本文

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>元素的行为:

<html>
<head>
<style type="text/css">
h1 { behavior: url(behave.htc) }
</style>
</head>
<body>
<h1>Mouse over me!!!</h1>
</body>
</html>

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>
关键词:
推荐给好友】【关闭
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为