设为首页 收藏本站
查看: 1450|回复: 0

[经验分享] QQ菜单OUTLOOK风格

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-13 13:17:08 | 显示全部楼层 |阅读模式
1 DSC0000.gif <html>
  2<head>
  3<meta http-equiv='Content-Type' content='text/html; charset=gb2312'>
  4<style type='text/css'>
  5 DSC0001.gif DSC0002.gif .folder1 DSC0003.gif {}{text-align:center; background: #00A4E1; border: 2px outset; background-image:url(Images/skin/folder_bg.gif); border-color: #00BBFF #0077FF #FFFFFF #00BBFF; cursor: hand; font-size: 9pt}
  6.folder2 {}{text-align:center; background: #20C1FF; border: 2px outset; background-image:url(Images/skin/folder_bg.gif); border-color: #00BBFF #0077FF #0077FF #60D3FF; cursor: hand; font-size: 9pt}
  7.foldercont{}{background: #D9ECF4; border: 1px outset; border-color: #B0D8FF #0077FF #0077FF #B0D8FF; font-size: 9pt; cursor: default;}
  8</style>
  9
10<SCRIPT LANGUAGE=javascript>
11onload=function(){
12 DSC0004.gif var lstr = ""
13 for (var i=0; i<30; i++) lstr+= "haha..<br>";
14 var lofolder = new outlookfolder(null,335,100,15);
15 lofolder.addfolder("菜单1","1..<br>2..");
16 lofolder.addfolder("菜单2",lstr);
17 lofolder.addfolder("菜单3");
18 lofolder.addfolder("菜单4");
19 lofolder.addfolder("菜单5");
20 lofolder.showfolderX(0);
21 DSC0005.gif }
22     //[容器,高,宽,展开速度]
23function outlookfolder(aoP,aih,aiw,ait){
24 if (aih==null) aih=400;
25 if (aiw==null) aiw="100%";
26 if (ait==null) ait=20;
27 var loMain  = document.createElement("<span style='overflow:hidden;height:"+aih+";width:"+aiw+"'></span>");
28    var lsUniqueID = loMain.uniqueID;
29 var loSlide = document.createElement("span");
30    loSlide.innerHTML = "<button onmouseout='"+lsUniqueID+".SlideClickStop()' onmousedown='"+lsUniqueID+".SlideClickStart();"+lsUniqueID+".SlideCilckup()' style='position:absolute;display:none;width:10;height:10'></button><button onmouseout='"+lsUniqueID+".SlideClickStop()' onmousedown='"+lsUniqueID+".SlideClickStart();"+lsUniqueID+".SlideCilckdown()' style='position:absolute;display:none;width:10;height:10'></button>";
31 var liContH = aih;
32 DSC0006.gif DSC0007.gif     if (aoP==null){
33        document.body.appendChild(loMain);
34        document.body.appendChild(loSlide);
35    }else{
36        aoP.appendChild(loMain);
37        aoP.appendChild(loSlide);
38 DSC0008.gif     }
39         //增加一个目录[名字,内容]
40    loMain.addfolder = function(str,cont){
41     var loPar = document.createElement("SPAN");
42     loPar.innerHTML = "<span onclick='"+lsUniqueID+".showme(this)' style='overflow:hidden;width:100%;' class='folder1'></span><span style='position:relative;overflow:hidden;width:100%;height:1' class='foldercont'></span>";
43  this.appendChild(loPar);
44  loPar.children[0].innerHTML = (str==null?" ":str);
45  loPar.children[1].innerHTML = (cont==null?" ":cont);
46  liContH -= parseInt(loPar.children[0].offsetHeight);
47    }
48         //打开/关闭第x个目录夹
49 loMain.showfolderX = function(aix){
50  loMain.showme(loMain.children[aix].children[0])
51 }
52      //打开/关闭当前obj所在的目录
53    loMain.showme = function(obj){
54  if (loMain.moving) return;
55  loMain.moving = true;
56  if (obj.bOpen){
57   obj.bOpen = false;
58   loMain.closefolder(obj.parentElement.children[1]);
59   obj.className = 'folder1';
60  }else{
61   obj.bOpen = true;
62   loMain.openfolder(obj.parentElement.children[1]);
63   obj.className = 'folder2';
64   var lxfolders = loMain.children;
65   for (var i=0; i<lxfolders.length; i++){
66    var loChild = lxfolders.children[0];
67    if(loChild.uniqueID!=obj.uniqueID){
68     lxfolders.children[1].style.height=1;
69     loChild.bOpen = false;
70     loChild.className = 'folder1';
71    }
72   }
73  }
74  loMain.SlideItemsAction(obj.parentElement.children[1]);
75    }
76         //为目录内容设置Slide
77    var loSlideItem = null;
78 var lbSlideing = false;
79 loMain.SlideCilckdown = function(){  //向下滚动
80  loSlideItem.scrollTop += 2;
81  if (!lbSlideing&&loSlideItem.scrollTop<loSlideItem.scrollHeight) setTimeout(lsUniqueID+'.SlideCilckdown()',1)
82 }
83 loMain.SlideCilckup = function(){  //向上滚动
84  loSlideItem.scrollTop -= 2;
85  if (!lbSlideing&&loSlideItem.scrollTop>0) setTimeout(lsUniqueID+'.SlideCilckup()',1)
86 }
87 loMain.SlideClickStart = function(){ //允许开始滚动
88  lbSlideing=false;
89 }
90 loMain.SlideClickStop = function(){  //强制停止滚动
91  lbSlideing=true;
92 }
93    loMain.SlideItemsAction = function(obj){
94  var loUp   = loSlide.children[0];
95  var loDown = loSlide.children[1];
96  if (obj.scrollHeight<=liContH||obj.parentElement.children[0].bOpen!=true){
97   loUp.style.display="none";
98   loDown.style.display="none";
99  }else{
100   loSlideItem = obj;
101   var lxOffset = getTrueOffset(obj);
102   var lileft = lxOffset[0]+obj.offsetWidth-20;
103   var litop  = lxOffset[1]+obj.offsetHeight+5;
104   with(loUp.style){
105    display="";
106    left=lileft;
107    top=litop;
108   }
109   with(loDown.style){
110    display="";
111    left=lileft;
112    top=litop+liContH-40;
113   }
114  }
115    }
116        //逐渐关闭obj所在的内容显示
117 loMain.closefolder = function(obj,ai){
118  if (ai==null) ai=liContH;
119  if (ai<ait){ obj.style.height=1; ai=1}
120  if (ai>1){
121   obj.style.height = ai;
122   ai -= ait;
123   setTimeout(lsUniqueID+'.closefolder('+obj.uniqueID+','+ai+')',1)
124   return;
125  }
126  loMain.moving = false;
127 }
128     //逐渐打开obj所在的内容显示
129 loMain.openfolder = function(obj,ai){
130  if (ai==null) ai=1;
131  if (liContH>ai){
132   obj.style.height = ai;
133   ai += ait;
134   setTimeout(lsUniqueID+'.openfolder('+obj.uniqueID+','+ai+')',1)
135   return;
136  }
137  loMain.moving = false;
138 }
139 function getTrueOffset(e){
140    var x=0; var y=0;
141    if(!e)return [x,y];
142    while(e){
143      x+=parseInt(e.offsetLeft);
144      y+=parseInt(e.offsetTop);
145      e=e.offsetParent;
146   }
147   return [x,y];
148  }
149  return loMain;
150}
151</SCRIPT>
152

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-113078-1-1.html 上篇帖子: Outlook 数据文件(.pst 和 .ost)简介 下篇帖子: 如何删除Smartphone手机与Office同步后的重复项,如联系人、日程等。Keyword:office,Outlook,删除,重复项目
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表