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 相关文章推荐
图片自动缩小 点击放大
Jul 07 Javascript
一个简单的动态加载js和css的jquery代码
Sep 01 Javascript
node.js中的buffer.Buffer.byteLength方法使用说明
Dec 10 Javascript
javascript如何写热点图
Dec 08 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 Javascript
浅谈javascript中的加减时间
Jul 12 Javascript
详解jQuery事件
Jan 13 Javascript
JS+HTML5 FileReader实现文件上传前本地预览功能
Mar 27 Javascript
bootstrap datepicker插件默认英文修改为中文
Jul 28 Javascript
js中url对象化管理分析
Dec 29 Javascript
validform表单验证的实现方法
Mar 08 Javascript
Jquery $.map使用方法实例详解
Sep 01 jQuery
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调用Oracle存储过程的方法
2008/09/12 PHP
解析thinkphp的左右值无限分类
2013/06/20 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
yii2中dropDownList实现二级和三级联动写法
2017/04/26 PHP
javascript 使td内容不换行不撑开
2012/11/29 Javascript
jQuery简单实现网页选项卡特效
2014/11/24 Javascript
jQuery中is()方法用法实例
2015/01/06 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
Javascript实现飞动广告效果的方法
2015/05/25 Javascript
基于javascript制作微信聊天面板
2020/08/09 Javascript
JQuery动态添加Select的Option元素实现方法
2016/08/29 Javascript
微信公众平台开发教程(六)获取个性二维码的实例
2016/12/02 Javascript
JS Select下拉框(支持输入模糊查询)
2017/02/04 Javascript
jQuery实现级联下拉框实战(5)
2017/02/08 Javascript
canvas实现钟表效果
2017/02/13 Javascript
jQuery实现炫丽的3d旋转星空效果
2018/07/04 jQuery
elementUI select组件value值注意事项详解
2019/05/29 Javascript
layUI实现列表查询功能
2019/07/27 Javascript
微信小程序 scroll-view 水平滚动实现过程解析
2019/10/12 Javascript
mpvue实现左侧导航与右侧内容的联动
2019/10/21 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
vue实现自定义多选按钮
2020/07/16 Javascript
vue 解决data中定义图片相对路径页面不显示的问题
2020/08/13 Javascript
跟老齐学Python之关于循环的小伎俩
2014/10/02 Python
Python的另外几种语言实现
2015/01/29 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
2015/05/22 Python
Python批量重命名同一文件夹下文件的方法
2015/05/25 Python
Python基础教程之利用期物处理并发
2018/03/29 Python
pytorch 实现将自己的图片数据处理成可以训练的图片类型
2020/01/08 Python
django有哪些好处和优点
2020/09/01 Python
高中毕业生自我鉴定范文
2013/09/26 职场文书
建材业务员岗位职责
2013/12/08 职场文书
优秀党员申报材料
2014/12/18 职场文书
2019年恭贺升学祝福语集锦
2019/08/15 职场文书
SpringCloud Alibaba项目实战之nacos-server服务搭建过程
2021/06/21 Java/Android
vue实现省市区联动 element-china-area-data插件
2022/04/22 Vue.js