发信人: morefeetin(毛·狒·甜) 
整理人: eagle(2002-01-29 09:19:24), 站内信件
 | 
 
 
 
 
 预备知识:懂一点Javascript或vbscript.比较熟悉HTML代码。
 
 1)什么是Behavior。
 
 
   “Behavior"是IE5.0的新增的特性之一。它可以让网页的不同元件同时套用同一种动态的变换效果。先看一个例子:
 
 <html>
 <body bgcolor="#FFFFFF" text="#000000">
 <center>
 <p style="font-size:24;cursor:hand"
 	onmouseover="this.style.color='#0000ff'"
 	onmouseout="this.style.color='#000000'">
 	SOME TEXT HERE
 </p>
 <p>	SOME TEXT HERE</p>
 <p>	SOME TEXT HERE</p>
 <p>	SOME TEXT HERE</p>
 <p>	SOME TEXT HERE</p>
 </center>
 </body>
 </html>
  
 
  
 
 在这个例子里,我们给<p>标签定义了"onMouseOver"和"onMouseOut"两种事件的行为。当鼠标移到文字上面文字变色,鼠标移开又恢复原状。
 
 现在有一个问题,如果要让其他的段落文字都具有相同的效果,那不是要给所有的<p>标签定义onMouseOver和onMouseOut事件吗?
 
 这个时候"Behavior"就派上用场了!我们可以将动态变化处理的程序另存一个”.HTC“的为扩展名的外部文件,例如:
 
 Exp2.HTC
 
 <attach event="onmouseover" onevent="changecolor1()"/>
 <attach event="onmouseout" onevent="changecolor2()"/>
 <script language="Javascript">
 function changecolor1(){
 	style.color="#0000ff"
 }
 
 function changecolor2(){
 	style.color="#000000"
 }
 </script>
   
 在你的主页面中。以套用css式样的语法将exp2.htc定义的behavior指定给特定的标记。如果要实现Exp1的效果。就这样指定:
 
 Exp2.htm
 
  <html>
 <style>
  p{ behavior:url(exp2.htc)}
 </style>
 <body bgcolor="#FFFFFF" text="#000000">
 <center>
   <p>Some text here </p>
   <p>some text here </p>
   <p>some text here </p>
   <p>some text here </p>
   <p>some text here </p>
   <p>some text here </p>
 </center>
 </body>
 </html>
 
        
  
 
 好了,运行代码看看。是不是所有的文字全能变色了?!
 
 2)HTC文件基本语法格式。
 
   相信有了上面的例子,大家对Behavior也有了一定的认识。下面来介绍一下具体如何编写htc文件。
 
 首先要在文件中声明事件和它所对应的处理函数。
 
 语句的基本格式是:
 
 <Attach Event="事件名称”onEvent="处理函数“/>
 
 "Event"代表网页元件所发生的事件。如onCick,onMouseOver.等。onEvent则是这个事件对应的处理程序。
 
 声明完后,接下来就是<script>处理函数的定义了!看看exp2.htc就知道了,格式就是那样。:)
 
 3)如何编写事件处理函数。
 
   其实HTC文件里的处理函数和一般的script没有区别。只是它多了一个element对象。这个element就代表了套用了HTC文件的标签,
 
 element.style就代表了标签所对应的式样。但element这个关键字是可以省略的。所以style.color就等于element.style.color了。
 
 好啦!关于Behavior和HTC的基本介绍就这些了。我没写过东西,不会写什么教程,写得不好,大家不要笑我了!呵呵! 
 
 留一个题目:怎样用htc实现鼠标移到表格就使单元格背景变色?(以前讨论过的菜单效果,现在用htc来试试?)
 
 (C)版权归我所有!不过你可以随便转载,哈哈!
 
 有什么问题可以与我联系,email:[email protected];qq:3466499. 
  
 
 
  ---- Photoshop专门站:
  
 :图形版版主:
 :网站建设版副:
 ICQ:102630483
                                 
       | 
 
 
 |