zoukankan      html  css  js  c++  java
  • OUTLOOK菜单类

    <HTML>
    <HEAD>
    <TITLE>outlook菜单</TITLE>
    <META http-equiv=content-type content=text/html;charset=gb2312>
    <style>
    .outlook-title
    {
        border
    :1px outset;    
        background-color
    :buttonface;
        color
    :black;
        text-align
    :center;
        cursor
    :hand;
        font-size
    :9pt;
    }

    .outlook-item
    {
        padding
    :2px;
        font-size
    :9pt;
    }


    a.outlook-item:hover
    {
        color
    :blue;
    }

    </style>
    </HEAD>
    <BODY style="MARGIN: 0px" text=black vLink=white aLink=white link=white scroll=no>
    <table height="100%" width="100%" border=0 cellpadding=0 cellspacing=0>
        
    <tr><td width="140">
            
    <TABLE style="WIDTH: 140px; HEIGHT: 100%" cellSpacing=0 cellPadding=0 bgColor=#aca899 border=1 hspace="0" vspace="0">
            
    <TR>
            
    <TD id=outLookBarShow style="HEIGHT: 100%"  align=middle name="outLookBarShow">
                
    <div id="o1" style="height:100%;"></div>
            
    </td>
            
    </tr>
            
    </table>
        
    </td><td><iframe id="frm" name="frm" width="100%" height="100%" frameborder=0></iframe></td></tr>
    </table>

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    /**//*  
    **    ==================================================================================================  
    **    类名:CLASS_OUTLOOKBAR  
    **    功能:OUTLOOK菜单  
    **    示例:  
        ---------------------------------------------------------------------------------------------------  
      
        var o = new CLASS_OUTLOOKBAR();
            o.addTitle("工作安排");
            o.addTitle("通告信息");
            o.addTitle("管理制度");
            o.addTitle("系统管理");

            o.addItem(0,"今日安排","frm","http://www.google.com");
            o.addItem(0,"工作任务","frm","http://baidu.com");

            o.addItem(1,"报社通知","frm","http://www.itpub.net/forum6.html",null);

            o.setupById("o1");

            //定义需要安装的DIV
            <div id="o1" style="height:100%;"></div>

      
        ---------------------------------------------------------------------------------------------------  
    **    作者:ttyp  
    **    邮件:ttyp@21cn.com  
    **    日期:2005-12-1  
    **      版本:0.2
    **    ==================================================================================================  
    */

    function CLASS_OUTLOOKBAR(id,name)
    {
        
    var THIS1 = this;

        
    this.id    = getUnique(id);
        
    this.name = getUnique(name);
        
    this.width = "140";
        
    this.height = "100%";
        
    this.titles = new Array();

        
    function getUnique(p){
            
    if(p!=null){
                
    return p;
            }
     else {
                
    return "outlook_" + new Date().getTime() + "_";
            }

        }


        
    this.addTitle = function(name){    

            
    function title(name){
                
    var THIS2    = this;
                
    this.name    = name;
                
    this.items    = new Array();
            
                
    this.addItem = function(name,target,url,image,align){

                    
    function item(name,target,url,image,align){
                        
    this.name = name;
                        
    this.image = image;
                        
    this.target = target;
                        
    this.url = url;
                        
    this.align = align;
                    }


                    
    var        _item = new item(name,target,url,image,align);
                    THIS2.items[THIS2.items.length] 
    = _item;
                    
    return _item;
                }

            }


            
    var _title = new title(name);
            
    this.titles[this.titles.length] = _title;
            
    return _title;
        }


        
    this.step    = 4;
        
    this.speed    = 10;
        
    this.selectedIndex = 0;
        
    this.timer  = 0;
        
    this.rate    = 100;
        
    this.run    = false;
        
    this.wait = new Array();

        
    this.select = function(index){
            
    if(this.selectedIndex!=index){
                
    if(this.run==false){
                    
    this.rate = 100;
                    
    this.run = true;
                    
    this.timer = window.setInterval(function(){
                    
                        THIS1.rate
    -= THIS1.step;                    
                        
    var oldI = document.getElementById(THIS1.id + THIS1.selectedIndex).nextSibling;
                        
    var newI = document.getElementById(THIS1.id + index).nextSibling;

                        
    var ooI = oldI.childNodes[0].childNodes[0];
                        
    var nnI = newI.childNodes[0].childNodes[0];

                        oldI.style.display 
    = "";
                        newI.style.display 
    = "";

                        
    if(THIS1.rate<0){
                            window.clearInterval(THIS1.timer);
                            THIS1.timer 
    = 0;
                            ooI.style.overflow
    ="auto";
                            nnI.style.overflow 
    = "auto";
                            oldI.style.display 
    = "none";
                            THIS1.run 
    = false;
                            THIS1.selectedIndex 
    = index;
                            
    if(THIS1.wait.length>0){
                                THIS1.select(THIS1.wait[
    0]);
                                THIS1.wait 
    = THIS1.wait.slice(1,-1);
                            }

                        }
     else {                        
                            ooI.style.overflow 
    = "hidden";
                            nnI.style.overflow 
    = "hidden";
                            oldI.style.height 
    = THIS1.rate +"%";
                            newI.style.height 
    = (100 - THIS1.rate) + "%";
                        }


                    }
    ,this.speed); 
                }
    else{
                    
    this.wait[this.wait.length] = index;
                }

            }

        }


        
    this.setup = function(contain){
            
    if(contain!=null){        
                
    var table = document.createElement("table");
                    table.style.width    
    = "100%";
                    table.style.height    
    = "100%";
                    table.cellPadding 
    = "0px";
                    table.cellSpacing 
    = "0px";
                    table.style.border 
    = "0px solid red";
                    table.bgColor 
    = "#aca899";

                    
    function getItem(width,height,display,title){
                        
    var tris = document.createElement("tr");
                        
    var tdis = document.createElement("td");
                            tdis.style.width 
    = width;
                            tris.style.height 
    = height;
                            tris.style.display 
    = display;
                            tdis.className    
    = "outlook-item";
                            tdis.style.verticalAlign 
    = "top";    

                            
    if(title!=null&&typeof(title.items)!="undefined"){
                                
                                
    var vv = document.createElement("div");
                                    vv.style.overflow 
    = "auto";
                                    vv.style.height 
    = "100%";
                                    vv.style.width 
    = "100%";

                                
    for(var i=0;i<title.items.length;i++){
                                    
    var div = document.createElement("div");
                                        div.style.textAlign 
    = "center";
                                        div.style.height 
    = "24px";                                    
                                        div.style.paddingTop 
    = "4px";

                                    
    if(title.items[i].image!=null){
                                        
    var img = document.createElement("img");
                                            img.src 
    = title.items[i].image;
                                            div.appendChild(img);
                                        
    if(typeof(title.items[i].align)!="undefined"&&title.items[i].align==1){
                                            
    var lbl = document.createElement("label");
                                                lbl.innerHTML 
    = "<br>";
                                                div.appendChild(lbl);
                                        }

                                    }


                                    
    var a    = document.createElement("a");
                                        a.target    
    = title.items[i].target;
                                        a.innerHTML 
    = title.items[i].name;
                                        a.href        
    = title.items[i].url;
                                        div.appendChild(a);
                                        vv.appendChild(div);                                                                                
                                }
                        

                                tdis.appendChild(vv);
                            }


                            tris.appendChild(tdis);
                            
    return tris;
                    }

            
                    
    for(var i=0;i<this.titles.length;i++){        
                        
    var tr = document.createElement("tr");
                        
    var td = document.createElement("td");

                            tr.style.height 
    = "25px";
                            td.style.width    
    = "100%";                        
                            td.className    
    = "outlook-title";    

                            td.innerHTML    
    = this.titles[i].name;
                            tr.id            
    = this.id + i;
                                                                            
                            tr.appendChild(td);
                            table.appendChild(tr);
                            
                            
    if (i==this.selectedIndex){
                                
    var tris = getItem("100%","100%","",this.titles[i]);
                                    table.appendChild(tris);                                
                            }
     else {
                                
    var tri     = getItem("100%","0%","none",this.titles[i]);
                                    table.appendChild(tri);
                            }
        
                                                
                    }


                    
    if(typeof(contain.outerHTML)=="undefined"){
                        contain.appendChild(table);
                    }
     else {        
                        contain.innerHTML 
    = table.outerHTML;
                    }
        
                    
                    
    //bind event
                    for(var i=0;i<this.titles.length;i++){
                        
    var title = document.getElementById(this.id + i);
                        
    if(title){
                            
    function mapping(index){
                                
    try    {
                                    title.onclick 
    = function(){THIS1.select(index);}
                                    title.oncontextmenu 
    = function()return false;}
                                    title.nextSibling.oncontextmenu 
    = function(){return false;}
                                }
     catch (e){
                                }

                            }

                            mapping(i);
                        }

                    }

            }

        }


        
    this.addItem = function(index,name,target,url,image,align){
            
    if(index>=0&&index<this.titles.length){
                
    return this.titles[index].addItem(name,target,url,image,align);
            }

        }


        
    this.setupById = function(id){
            
    var d = document.getElementById(id);
            
    if(d){
                
    this.setup(d);
            }

        }

    }


    var o = new CLASS_OUTLOOKBAR();
        o.addTitle(
    "工作安排");
        o.addTitle(
    "通告信息");
        o.addTitle(
    "管理制度");
        o.addTitle(
    "系统管理");

        o.addItem(
    0,"今日安排","frm","http://www.google.com");
        o.addItem(
    0,"工作任务","frm","http://baidu.com");

        o.addItem(
    1,"报社通知","frm","http://www.itpub.net/forum6.html",null);

        o.setupById(
    "o1");

    //-->
    </SCRIPT>

    </BODY>
    </HTML>

    OUTLOOK菜单,在IE6.0.FIREFOX1.0下测试通过
    生活学习
  • 相关阅读:
    文件夹生成zip
    html 字符串 生成 pdf 完美解决中文不显示
    layui 数据表格+分页+搜索+checkbox+缓存选中项数据
    排序算法总结
    排序算法(10)--Distribution Sorting--分布排序[2]--Radix Sort--基数排序
    排序算法(8)--Merge Sorting--归并排序--Merge sort--归并排序
    [Android]在Dagger 2中使用RxJava来进行异步注入(翻译)
    [Android]使用Dagger 2进行依赖注入
    [Android]Android端ORM框架——RapidORM(v2.1)
    [Android]使用MVP解决技术债务(翻译)
  • 原文地址:https://www.cnblogs.com/ttyp/p/304436.html
Copyright © 2011-2022 走看看