实现TabView(页签)效果
今天花了点时间,设计了一个网页上用的tabview(页签、tabcontrol)效果。个人觉得实现得比较不错,网页元素用得比较少,js代码也比较精练。测试了一下支持IE、FireFox以及chrome。支持同一页面上多处使用。
没有什么过多说的。先看一下效果。
页面中用到一个图片:
页面代码如下:
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head><title>tabview示例(欢迎访问我的博客:http://wallimn.iteye.com)</title>
- <meta http-equiv=content-type content="text/html; charset=GBK">
- <script type="text/javascript">
- function tabclick(obj){
- if(obj.className=='cur')return;
- var idx;
- ; n<obj.parentNode.childNodes.length; n++){
- obj.parentNode.childNodes[n].className="";
- if(obj==obj.parentNode.childNodes[n])idx=n;
- }
- obj.className="cur";
- var pc = obj.parentNode.nextSibling;
- while(pc.nodeType==3)pcpc=pc.nextSibling;
- ; n<pc.childNodes.length; n++){
- pc.childNodes[n].className="hdn";
- }
- pc.childNodes[idx].className="";
- }
- </script>
- <style type="text/css">
- .debug{
- border:1px solid red;
- }
- .hdn{
- display:none;
- }
- ul.tabbar,ul.tabpage{
- list-style-type:none;
- margin:0;
- font-size:12px;
- padding:0;
- }
- ul.tabbar{
- background:url(tabview.gif) repeat-x 0 -68px;
- height:34px;
- }
- ul.tabbar li{
- float:left;
- width:83px;
- height:34px;
- line-height:34px;
- text-align:center;
- background:url(tabview.gif);
- cursor:pointer;
- cursor:hand;
- }
- ul.tabbar li.cur{
- background:url(tabview.gif) 0 -34px;
- }
- ul.tabpage{
- border-style:ridge;
- border-color:#dceefd;
- border-width:0 2px 2px 2px;
- height:302px;
- overflow:hidden;
- }
- ul.tabpage li{
- height:300px;
- border-width:0;
- overflow-y:auto;
- }
- </style>
- </head>
- <body>
- <ul class="tabbar">
- <li style="margin-left:1em" class="cur" onclick="tabclick(this)">过滤条件</li>
- <li onclick="tabclick(this)">排序条件</li>
- <li onclick="tabclick(this)">分 组</li>
- <li onclick="tabclick(this)">计算字段</li>
- </ul>
- <ul class="tabpage">
- <li>显示过滤条件</li>
- <li class="hdn">显示排序条件</li>
- <li class="hdn">显示分 组</li>
- <li class="hdn">显示计算字段</li>
- </ul>
- </body>
- </html>
转:http://wallimn.iteye.com/blog/353867
03-25进一步简化了代码,仅使用一个js函数;
03-27修正了FF及Chrome浏览器中,对于nextSibling的解释为"\n",然后才是ul,这个很奇怪。
实现TabView(页签)效果的更多相关文章
- ASP.NET MVC搭建项目后台UI框架—4、tab多页签支持
目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...
- WPF如何实现一个漂亮的页签导航UI
最近看到一个比较漂亮的UI主界面,该UI是用左边的页签进行导航,比较有特色,就想着尝试用WPF来实现一下.经过一番尝试,基本上将UI设计图的效果用WPF程序进行了实现.下面介绍一下主要的思路: 1 U ...
- JavaScript选项卡/页签/Tab的实现
选项卡,也称页签,英文用Tab(Module-Tabs)表示.Tab将不同的内容重叠放在一个布局块内,重叠的内容区里每次只有其中一个是可见的. Tab可以在相同的空间里展示更多的信息,它把相似的主题分 ...
- android123 zhihuibeijing 新闻中心-新闻 页签 ViewPagerIndicator实现
## ViewPagerIndicator ## 使用导入ViewPagerIndicator库的方式相当于可以改源码,打包编译Eclips可以自动完成. ViewPager指针项目,在使用ViewP ...
- Tab页签切换
js之tab页签切换效果 现在web网站,很多地都需要用到tab页签. 示例: $(document).ready(function(){ va ...
- Winfon 页签切换及窗体控件自适应
由于公司的业务调整,最近不仅开发bs,还有不熟悉的cs,人手也不足,项目还多,对于cs来说,算是小白,虽然是一个人,也是硬着头皮写,拖拽控件,自定义控件.一个项目下来,对cs有了很深的认识,这里好好感 ...
- easyui tabs页签显示在底部属性
data-options="tabPosition:'bottom'" 如果没有该属性 页签默认显示在最上面,效果如下 当加上了该属性 ,页签会出现在底部
- EBS OAF开发中怎样实现功能页签(Global Tab)
EBS OAF开发中怎样实现功能页签(Global Tab) (版权声明.本人原创或者翻译的文章如需转载.如转载用于个人学习,请注明出处.否则请与本人联系,违者必究) 功能页签的实现不须要不论什么编码 ...
- Android实现图片滚动控件,含页签功能,让你的应用像淘宝一样炫起来
首先题外话,今天早上起床的时候,手滑一下把我的手机甩了出去,结果陪伴我两年半的摩托罗拉里程碑一代就这么安息了,于是我今天决定怒更一记,纪念我死去的爱机. 如果你是网购达人,你的手机上一定少不了淘宝客户 ...
随机推荐
- duilib进阶教程 -- 改进List控件 (16)
一.控件隐藏后,允许用代码操作所有行为. 在做播放器的时候,最常用的功能莫过于顺序播放.随机播放了,而当我们切换歌曲的时候,显然应该选中该歌曲,List的选中函数是SelectItem,但是调用此函数 ...
- MYSQL操作数据表中的记录
36:操作数据表中的记录插入记录 INSERT INTO 表名 VALUES(); 或者INSERT 表名 VALUES(); UPDATE更新记录(单表更新) DELETE删除记录( ...
- Jquery对文本框的值、字符串的验证;正则表达式字符串的验证
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- super和this区别
* super()和this()类似,区别是,super()从子类中调用父类的构造方法,this()在同一类内调用其它方法. 4.super和this的异同: 1)super(参数):调用基类中的某一 ...
- Template Method模式和Strategy模式[继承与委托]
继承 program by difference. 通过继承,可以建立完整的软件结构分层.其中每一层都可以重用该层次以上的Code. 过度使用继承的代价是巨大的.应使用组合或者委托来替代继承. Tem ...
- CreateJSのeasel.js(一)
CreateJS是基于HTML5开发的一套模块化的库和工具. 基于这些库,可以非常快捷地开发出基于HTML5的游戏.动画和交互应用. CreateJS为CreateJS库,可以说是一款为HTML5游戏 ...
- (转)阴影锥(Shadow Volume)
转自:http://blog.csdn.net/zjull/article/details/11819923 Shadow Map和Shadow Volume是当今比较流行的实时阴影渲染方法,跟Sha ...
- ios相关手册、图表等综合
Objective-C初学者速查表(来源:http://www.cocoachina.com/applenews/devnews/2013/1115/7362.html) iOS UIKit类图 (来 ...
- vim 多行注释消除注释,多行删除
进入可视化模式: Ctrl+v 继续进入编辑模式: shift+i 注释: shift+# 注释生效: ESC 取消注释 d 删除 选中全部字符块区域,使用方向键上下右: 然后,按一下d
- 【转】Objective-C Class Dump
(转自:http://blog.sina.com.cn/s/blog_4431c7610100x15t.html) class dump是一个命令行工具,用来监测存储在Mach-O二进制文件理的Obj ...