javascript采用数组实现tab菜单切换效果


Posted in Javascript onDecember 12, 2012

最近写了一个tab菜单,这个也算是web2.0的产物了,没什么技术含量,练练手而已.

以下是tab菜单的html结构:
<div id="a"><div id="head"><span id="tab1">vhc</span><span id="tab2">dsdfd</span>..........................<span id="blank"></span></div><div id="body"></div></div>
tab1,tab2就是内容,blank是填充剩下的.body是tab标签对应的内容.

以下是javascript代码:

sx.activex.tabmenu={ 
create:function(t){ 
var a=document.createElement("div"); 
var head=document.createElement("div"); 
var body=document.createElement("div"); 
var blank=document.createElement("span"); 
a.style.height="200px"; 
a.style.width="300px"; 
//a.style.border="1px red solid"; 
head.style.height="15%"; 
//head.style.overflow="hidden"; 
head.style.width="100%"; 
blank.style.width=100-20*t.length+"%"; 
blank.style.height="100%"; 
blank.style.borderBottom="1px red solid"; 
blank.style.lineHeight=parseInt(a.style.height)*0.15+"px";; 
body.innerHTML=t[0][1]; 
body.style.height="85%"; 
body.style.padding="10px"; 
body.style.border="1px red solid"; 
body.style.borderTop="0px"; 
for(var i=0;i<t.length;i++){ 
var tab=document.createElement("span"); 
tab.style.border="1px red solid"; 
tab.style.width="20%"; 
tab.style.lineHeight=parseInt(a.style.height)*0.15+"px"; 
tab.style.textAlign="center"; 
tab.style.height="100%"; 
tab.style.backgroundColor="yellow"; 
tab.style.cursor="hand"; 
tab.innerHTML=t[i][0]; 
tab.onclick=function(r){ 
return function(){ 
for(var i1 in head.all){ 
if(head.all[i1]!=this && head.all[i1].tagName=="SPAN") 
head.all[i1].style.borderBottom="1px red solid"; 
this.style.borderBottom="0px"; } 
body.innerHTML=t[r][1]; 
} 
}(i); 
head.appendChild(tab);; 
} 
head.firstChild.style.borderBottom="0px"; 
head.appendChild(blank); 
a.appendChild(head); 
a.appendChild(body); 
return a; 
} 
}

传入的参数t是一个二维数组,里面是一个标签题目和标签内容的形式,调用方式如下:
<html> 
<head> 
<title>Untitled Document</title> 
</head> 
<body> <script src="kongjian.js"></script> 
<script> 
var a=sx.activex.tabmenu.create([["asd","wewfrwefwe"],["we","dsfsdfsdf"]]); 
document.body.appendChild(a); 
</script> 
</body> 
</html>

差不多完成了,有兴趣的朋友可以去测试下.
Javascript 相关文章推荐
prettify 代码高亮着色器google出品
Dec 28 Javascript
如何让DIV可编辑、可拖动示例代码
Sep 18 Javascript
Javascript实现获取及设置光标位置的方法
Jul 21 Javascript
coffeescript使用的方式汇总
Aug 05 Javascript
基于javascript简单实现对身份证校验
Jan 25 Javascript
百度地图给map添加右键菜单(判断是否为marker)
Mar 04 Javascript
vue数据控制视图源码解析
Mar 28 Javascript
webpack4 升级迁移的实现
Sep 12 Javascript
vue自定义指令directive的使用方法
Apr 07 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
Apr 15 Javascript
Javascript读取上传文件内容/类型/字节数
Apr 30 Javascript
js实现贪吃蛇小游戏
Oct 29 Javascript
javascript仿qq界面的折叠菜单实现代码
Dec 12 #Javascript
日历查询的算法 如何计算某一天是星期几
Dec 12 #Javascript
javascript实现日历控件(年月日关闭按钮)
Dec 12 #Javascript
关于js中alert弹出窗口文本换行问题简单详细说明
Dec 11 #Javascript
用js判断页面是否加载完成实现代码
Dec 11 #Javascript
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
Dec 11 #Javascript
IE6浏览器下resize事件被执行了多次解决方法
Dec 11 #Javascript
You might like
定义php常量的详解
2013/06/09 PHP
Nginx下配置codeigniter框架方法
2015/04/07 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
2017/02/08 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
js控制当再次点击按钮时的间隔时间
2014/06/03 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
jquery取消事件冒泡的三种方法(推荐)
2016/05/28 Javascript
深入理解JS函数的参数(arguments)的使用
2016/05/28 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
Javascript中for循环语句的几种写法总结对比
2017/01/23 Javascript
JavaScript中call和apply方法的区别实例分析
2018/08/03 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
[01:46]2018完美盛典章节片——坚守
2018/12/17 DOTA
Python实现把json格式转换成文本或sql文件
2015/07/10 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
深入理解Django的中间件middleware
2018/03/14 Python
Python操作MySQL数据库的方法
2018/06/20 Python
Python面向对象之接口、抽象类与多态详解
2018/08/27 Python
pandas重新生成索引的方法
2018/11/06 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
python根据文本生成词云图代码实例
2019/11/15 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
HTML5 本地存储 LocalStorage详解
2016/06/24 HTML / CSS
迪士尼法国在线商店:shopDisney FR
2020/12/03 全球购物
物业管理工作方案
2014/05/10 职场文书
党员教师一句话承诺
2014/05/30 职场文书
毕业证委托书范文
2014/09/26 职场文书
2014年维稳工作总结
2014/11/18 职场文书
致运动员加油稿
2015/07/21 职场文书
小学班主任心得体会
2016/01/07 职场文书