zoukankan      html  css  js  c++  java
  • 兼容各种浏览器的的选项卡菜单

      1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      2 <html xmlns="http://www.w3.org/1999/xhtml">
      3 <head>
      4 <title>兼容各种浏览器的的选项卡菜单</title>
      5 <meta http-equiv="content-type" content="text/html;charset=gb2312">
      6 <!--把下面代码加到<head>与</head>之间-->
      7 <style type="text/css">
      8 #tab_container1 {
      9     600px;
     10     text-align:left;
     11 }
     12 .cls_tab_nav {
     13     height:26px;
     14     overflow:hidden;
     15     font-size:12px;
     16     text-align:left;
     17     border-bottom:1px solid #FFAE1E;
     18 }
     19 .cls_tab_nav ul {
     20     font-size:9pt;
     21     margin:0;
     22     padding:0;
     23 }
     24 .cls_tab_nav_li {
     25     border:1px solid #FFAE1E;
     26     background:#fff000;
     27     157px;
     28     height:26px;
     29     line-height:26px;
     30     float:left;
     31     display:inline;
     32     overflow:hidden;
     33     text-align:center;
     34     cursor:pointer;
     35     margin-right:10px;
     36 }
     37 .cls_tab_nav_li_first {
     38     background-position:0px 0px;
     39 }
     40 .cls_tab_nav_li a {
     41     text-decoration:none;
     42     color:#555;
     43     font-size:12px;
     44 }
     45 .cls_tab_body {
     46     border:1px solid #FFAE1E;
     47     border-top:none;
     48     min-height:260px;
     49     padding:20px;
     50 }
     51 .cls_div {
     52     display:none;
     53     font-size:14px;
     54 }
     55 </style>
     56 </head>
     57 <body>
     58 <!--把下面代码加到<body>与</body>之间-->
     59 <div id="tab_container1">
     60   <div class="cls_tab_nav">
     61     <ul>
     62       <li class="cls_tab_nav_li cls_tab_nav_li_first"><a href="#">最新更新</a></li>
     63       <li class="cls_tab_nav_li"><a href="#">ASP类最新更新</a></li>
     64       <li class="cls_tab_nav_li"><a href="#">C#类最新更新</a></li>
     65     </ul>
     66   </div>
     67   <div class="cls_tab_body">
     68     <div class="cls_div" style="display:block;">这里是最新更新的显示内容</div>
     69     <div class="cls_div">ASP的显示内容</div>
     70     <div class="cls_div">C#的显示内容</div>
     71   </div>
     72 </div>
     73 <script type="text/javascript">
     74 
     75 
     76 try
     77 {
     78     document.execCommand("BackgroundImageCache", false, true);
     79 }
     80 catch(e){}
     81 
     82 
     83 function $(element)
     84 {
     85     if(arguments.length>1)
     86     {
     87         for(var i=0,elements=[],length=arguments.length;i<length;i++)
     88         elements.push($(arguments[i]));
     89         return elements;
     90     }
     91     if(typeof element=="string")
     92         return document.getElementById(element);
     93     else
     94         return element;
     95 }
     96 
     97 var Class=
     98 {
     99     create:function()
    100     {
    101         return function()
    102         {
    103             this.initialize.apply(this,arguments);
    104         }
    105     }
    106 }
    107 
    108 
    109 Object.extend=function(destination,source)
    110 {
    111     for(var property in source)
    112     {
    113       destination[property]=source[property];
    114     }
    115     return destination;
    116 }
    117 
    118 var tabMenu=Class.create();
    119 
    120 tabMenu.prototype=
    121 {
    122     initialize:function(container,selfOpt,otherOpt)
    123     {
    124         this.container=$(container);
    125         var selfOptions=Object.extend({fontWeight:"bold",fontSize:"12px",color:"#FFBC44"},selfOpt||{});
    126         var otherOptions=Object.extend({fontWeight:"normal",fontSize:"12px",color:"#666"},otherOpt||{});
    127         //用for循环得到objs数组,主要是为了兼容非IE浏览器把空白也当作子对象
    128           for(var i=0,length=this.container.childNodes.length,objs=[];i<length;i++)
    129         {
    130             if(this.container.childNodes[i].nodeType==1)
    131             objs.push(this.container.childNodes[i]);
    132         }
    133         var tabArray=objs[0].getElementsByTagName("li");
    134           //用for循环得到divArray数组,主要是为了兼容非IE浏览器把空白也当作子对象
    135           var divArray=new Array();
    136           for(i=0,length=objs[1].childNodes.length;i<length;i++)
    137         {
    138             if(objs[1].childNodes[i].nodeType==1)
    139             divArray.push(objs[1].childNodes[i]);
    140         }
    141           for(i=0,length=tabArray.length;i<length;i++)
    142         {
    143             tabArray[i].length=length;
    144             tabArray[i].index=i;
    145             tabArray[i].onmouseover=function()
    146                {
    147             //其它选项卡样式设置
    148                 for(var j=0;j<this.length;j++)
    149                 {
    150                     tabArray[j].style.backgroundPosition="-"+tabArray[j].offsetWidth+"px 0";
    151                     for(var property in selfOptions)
    152                     {
    153                         tabArray[j].firstChild.style[property]=otherOptions[property];
    154                     }
    155                 }
    156             //当前选项卡样式
    157                 this.style.backgroundPosition="0 0";
    158                 for(var property in selfOptions)
    159                 {
    160                     this.firstChild.style[property]=selfOptions[property];
    161              /*
    162               注意this.style.property和selfOptions.property的用法错误
    163               style.fontWeight正确
    164               style["fontWeight"]正确
    165               style["font-weight"]错误
    166              */
    167                 }
    168             //隐藏其它选项卡
    169                 for(j=0;j<this.length;j++)
    170                 {
    171                     divArray[j].style.display="none";
    172                 }
    173             //显示当前选项卡
    174                 divArray[this.index].style["display"]="block";
    175             }
    176         }
    177     }
    178 }
    179 var tab1=new tabMenu("tab_container1",{fontSize:"14px",color:"#FFBC44",fontWeight:"bold"},{fontWeight:"normal",color:"#666"});
    180 </script>
    181 </body>
    182 </html>
  • 相关阅读:
    Key-Value Memory Network
    Deep Mask Memory Network with Semantic Dependency and Context Moment for Aspect Level Sentiment Clas
    Deep Memory Network在Aspect Based Sentiment方向上的应用
    Deep Memory Network 深度记忆网络
    Self Attention 自注意力机制
    Attention基本公式及其变种
    *端策略优化算法(PPO)
    Policy Gradient 算法
    一本通 农场派对
    A
  • 原文地址:https://www.cnblogs.com/laonanren/p/2932008.html
Copyright © 2011-2022 走看看