选项卡实现(使用this)
来源:互联网 发布:淘宝香火符咒西极飞飞 编辑:程序博客网 时间:2024/06/05 16:38
一、实现效果
二、源代码
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"><title>选项卡切换</title><style>css代码-----html{padding:0px;margin:0px;font:12px normal "microsoft yahei";}#tabs {position:absolute;top:35%;bottom:35%;width:290px;padding:5px;height:30%;margin:20px;margin-left:40%;margin-right:auto;text-align:center;}#tabs ul {list-style:none;display:block;height:30px;line-height:30px;border-bottom:2px saddlebrown solid;margin:0px}#tabs ul li{background:#fff;cursor:pointer;float:left;list-style:none;height:28px;line-height:28px;margin:0px 3px;border:1px solid #aaaaaa ;border-bottom:none;display:inline-block;width:60px;text-align:center;}#tabs ul li.on{border-top:2px solid saddlebrown; border-bottom:2px solid #fff;}#tabs div{height:120px;line-height:25px;border:1px solid #336699;border-top:none;padding:5px;margin:0px}.hide{display:none;}</style>js实现函数------<script type="text/javascript"> window.onload = function(){ var oTab = document.getElementById("tabs"); var oLis = document.getElementsByTagName("li"); var oDivs = oTab.getElementsByTagName("div"); var len=oLis.length; for(var i=0;i<len;i++) { oLis[i].index=i; oLis[i].onclick=function(){ for(var n=0;n<len;n++) { oLis[n].className=""; oDivs[n].className="hide"; } this.className="on"; oDivs[this.index].className = ""; } } }</script></head>HTML代码------<body><div id="tabs"><ul><li class="on">房产</li><li>家居</li><li>二手房</li></ul><div>275万购昌平邻铁三居 总价20万买一居<br> 200万内购五环三居 140万安家东三环<br> 北京首现零首付楼盘 53万购东5环50平<br> 京楼盘直降5000 中信府 公园楼王现房<br></div><div class="hide">40平出租屋大改造 美少女的混搭小窝<br> 经典清新简欧爱家 90平老房焕发新生<br> 新中式的酷色温情 66平撞色活泼家居<br> 瓷砖就像选好老婆 卫生间烟道的设计<br></div><div class="hide"> 通州豪华3居260万 二环稀缺2居250w甩<br> 西3环通透2居290万 130万2居限量抢购<br> 黄城根小学学区仅260万 121平70万抛!<br> 独家别墅280万 苏州桥2居优惠价248万<br></div></div></body></html>
三、代码解析
window.onload=function(){ //将id=tabs的节点赋值给"oTab" var oTab=document.getElementById("tabs"); //将所有li节点赋值给"li"这个数组 var li=document.getElementsByTagName("li"); //将oTab下的所有div节点赋值给"div"这个数组 var div=oTab.getElementsByTagName("div"); //遍历所有的li节点 for(var i=0;i<li.length;i++){ //给每一个li设置索引值 li[i].index=i; //给每一个li添加单击事件 li[i].onclick=function(){ //遍历oTab下的所有div节点 for(var n=0;n<li.length;n++){ //给每一个li的class属性设置为"" li[n].className=""; //给每一个div的class属性设置为"hide" div[n].className="hide"; } //给当前li的class属性设置为"on" this.className="on"; //给当前li的索引值对应的div的class属性设置为"" div[this.index].className=""; } }注释--1.为什么使用this.className和div[this.index].className,不适用li[i]?答:还没有触发点击事件的时候,i已经循环完毕,即i=len。因此触发时间时,li[i]=li[3]。2. li[i].index=i的意思答:类似给每一个li独一无二的id值。3.li实现并排答:list-style:none;display:inline-block。
0 0
- 选项卡实现(使用this)
- js面向对象选项卡(this的使用)
- 使用JQuery实现选项卡
- TabHost选项卡的实现(一):使用TabActivity实现
- TabHost选项卡的实现(二):使用Fragment实现
- TabHost使用详解(实现滑动切换选项卡)
- 使用选项卡实现界面切换
- 《使用选项卡实现界面切换》
- 使用TabLayout 实现顶部选项卡功能
- js使用面向对象实现选项卡
- 使用js实现tab选项卡效果
- Android使用TabLayout实现选项卡
- Swing实现选项卡功能(JTabbedPane)
- jQuery实现选项卡(tabs)效果
- jQuery实现选项卡(tabs)效果
- tab标签(选项卡)切换实现
- 事件冒泡(选项卡的实现)
- tab标签(选项卡)切换实现
- java笔记--day09--多态(二)
- ALSA声卡笔记1---ALSA驱动框架
- docker 常用命令(持续更新)
- iOS 通讯录操作 删除联系人 以及联系人多个号码 如何删除其中一个号码
- [iOS]百分比编码
- 选项卡实现(使用this)
- Python中文件读取方法read(),readline(),readlines()的区别
- Swift-->Http网络请求(NSURLSession, Alamofire)
- leetcode_c++:树:Populating Next Right Pointers in Each Node II(117)
- hdu5833 Zhu and 772002
- Interllij 自定义模板
- savedInstanceState
- Ubuntu 下 网易云音乐使用体验
- 解决nagios报错:./stdio.h:456:1: error: 'gets' undeclared here (not in a function)的问题