css最强属性

语法:behavior : url ( url ) | url ( #objID ) | url ( #default#behaviorName ) 取值:
url ( url )  :  使用绝对或相对 url 地址指定DHTML行为组件(.htc)
url ( #objID )  :  使用二进制实现(作为 ActiveX? 控件)的行为。此处的 #objID 为 object 对象的 id 属性值
url ( #default#behaviorName )  :  IE的默认行为。由行为的名称标识( #behaviorName )指定


说明:设置或检索对象的DHTML行为。多个行为之间用空格隔开。
当多个附加到同一要素的行为发生冲突时,其结果确决于行为应用于要素的顺序。后一个行为的优先权高于前一个行为。例如,假如多个行为用于设置对象颜色,其结果将会由最后一个应用到要素的行为决定。同样的规则适用于不同行为提供的属性、事件、方法所发生的名称冲突。
可以使用 addBehavior 方法动态的将行为附着到对象。
此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。
务必注意使用样式表(CSS)的 behavior 属性内联定义或使用 addBehavior 方法附着的行为不会在对象从文档树中移除时被自动分离。而在文档中的样式表规则定义的行为会在对象从文档树中移除时被自动分离。
对应的脚本特性为 behavior 。 示例:p { behavior: url(#default#download); }
div { behavior: url(fly.htc) url(shy.htc); }
div { behavior: url(#myObject); }
------------------------------------------------------分割线YO--p-l-u-r-y----------------------------------------------------------------

------------------------应用1:刷新也保留输入框里面的文字
.sHistory {}{behavior:url(#default#savehistory);}

------------------------应用2:调用脚本
<html>
<head>
<style>
h1 { behavior: url(behave.htc) }
</style>
</head>
<body>
<h1>把鼠标放在这里</h1>
</body>
</html>

behave.htc


<component>
<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=255
}
function low_lite()
{
element.style.color=0
}
</script>
</component>

-------------------------应用3:超过规定字符长度显示...

============================title.htc=============================  
     ==================================================================  
     <public:attach      event=oncontentready      onevent="init();"      />  
     <public:attach      event=onmouseover      onevent="onMouseOver();"      />  
     <public:attach      event=onmouseout      onevent="onMouseOut();"      />  
     <public:property      name='Length'      />  
     <script      language="JavaScript"      type="text/JavaScript">  
     var      objLayer;  
     var      all_text;//记录全部的内容  
     var      show_text;//记录部分内容  
     function      init()  
     {  
     var      length      =      parseInt(this.Length);  
     all_text      =      element.innerText.Trim();  
     if(all_text.Length()>length)  
     show_text      =      all_text.subStrB(0,length)+"...";  
     else  
     show_text      =      all_text;  
     element.innerText=show_text;  
   
     }  
     function      onMouseOver()  
     {  
     element.innerText=all_text;  
     }  
     function      onMouseOut()  
     {  
     element.innerText=show_text;  
     }  
   
     function      String.prototype.Trim()  
     {  
     return      this.replace(/^//s*/g,"").replace(//s*/$/g,"");  
     }  
     function      String.prototype.Length()  
     {  
     var      str=this;  
     var      count=0;  
     for(var      i=0;i<str.length;i++)  
     {  
     if(str.charCodeAt(i)>255)  
     count+=2;  
     else  
     count++;  
     }  
     return      count;  
     }  
     //取得字符串字节长度  
     function      String.prototype.subStrB(start,lenB)  
     {  
     var      str=this;  
     var      count=0;  
     var      tempstr="";  
   
     for(var      i=0;count<lenB;i++)  
     {  
     if(str.charCodeAt(i)>255)  
     {count+=2;}  
     else  
     {count++}  
     tempstr+=str.substr(i,1);  
     }  
     return      tempstr;  
     }  
     </script>  
   
     ==================================实例===============================  
     <HTML>  
     <HEAD>  
     <TITLE>      New      Document      </TITLE>  
     <META      NAME="Generator"      CONTENT="EditPlus">  
     <META      NAME="Author"      CONTENT="">  
     <META      NAME="Keywords"      CONTENT="">  
     <META      NAME="Description"      CONTENT="">  
     </HEAD>  
     <style      type="text/css">  
     <!--  
     .makeupTitle  
     {  
     background-color:      #A7AAE4;  
     behavior:      url("titleHTC.htc");  
     }  
     -->  
     </style>  
     <BODY>  
     <TABLE>  
     <TR>  
     <TD      class="makeupTitle"      Length="20">一个中文的长度是2,测试一下!</TD>  
     </TR>  
     </TABLE>  
     </BODY>  
     </HTML>

--------------------------应用4:为所有属性加:hover事件------------------

<style type="text/css" media="projection, screen">
.whatever {
       background: #808080;        padding: 20px; }
.whatever:hover, .whateverhover {
       background: #eaeaea;
} </style>

<!-- Additional IE/Win specific style sheet (Conditional Comments) -->
<!--[if lte IE 6]>
<style type="text/css" media="projection, screen">
.whatever {
       behavior: expression(
           this.onmouseover = new Function("this.className += ' whateverhover';"),
           this.onmouseout = new Function("this.className = this.className.replace('whateverhover', '');"),
           this.style.behavior = null
       );
}
/*.whatever {
       background-color: expression(
           !this.js ? (this.js = 1,                this.onmouseover = new Function("this.className += ' whateverhover';"),
            this.onmouseout = new Function("this.className = this.className.replace('whateverhover', '');")
               ) : false);
       );
}*/
/*.whatever {
       background-color: expression(
           this.onmouseover = new Function("this.className += 'whateverhover';"),
           this.onmouseout = new Function("this.className = this.className.replace('whateverhover', '');")
       );
}*/
</style>
<![endif]--> 

----------------------------又分割---------------------------------

通过调用htc达到用css实现js程序的功能,behavior展现给我们的功能相当强悍.

百度空间未做测试,不知baidu屏蔽这个没,以上4个应用在自己的网站测试成功
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值