JavaScript效果之选项卡
拼了命学习js,想把学到的Javascript效果,可以记在博客里,在记录过程中,加深理解。
gogogo,第一个效果,选项卡。
一、选项卡效果的实现思路
选项卡效果的应用很广泛,几乎所有的网站都会用到选项卡,现在就来写选项卡。
选项卡的实现思路:
两个div,一个用来放在选项卡,一个用来放置每个选项卡内容。
首先,先把放置内容的div隐藏起来display:none,只保留一个显示display:block。
然后,通过点击选项卡,在该添加类的位置上添上属性类。
二、实现
我写的这个选项卡界面特“简洁”,只有说明选项卡该如何写。start~~~
截图:
function setTab(name,carsel,n) //name为名字,carsel为游标,n为tab的数量
{
for(var i =1;i<=n;i++)
{
var oMenu = document.getElementById('one'+i);
var oContent = document.getElementById('con_'+name+i);
oMenu.className = i == carsel?"hover":"";
oContent.style.display = i ==carsel?"block":"none";
}
}
<div id="tab_menu">
<ul>
<li id="one1" onclick="setTab('one',1,3)">女装</li>
<li id="one2" onclick="setTab('one',2,3)">男装</li>
<li id="one3" onclick="setTab('one',3,3)">童装</li>
</ul>
</div>
<div id="tab_content">
<div id="con_one1">女装女装女装女装女装</div>
<div id="con_one2" style="display:none">男装男装男装男装男装</div>
<div id="con_one3" style="display:none">童装童装童装童装童装</div>
</div>
上面的Javascript函数,通过一个for循环,来判断用户点击的是哪一个选项卡,然后便获取该选项卡元素。这里的处理是:document.getElementById('one'+i);
获取到的会是id = one1/one2/on3,然后判断,i == carsel?"hover":""; 此时循环的 i 是否会等于游标值,会的话就添加一个hover类上去,改变被点击项的样式。
同样,下面的语句:oContent.style.display = i ==carsel?"block":"none";给当前被点击的选项,设置display为block,即显示出来。
三、完整代码
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title></title>
<link href="" rel="stylesheet">
<style type="text/css">
.tab
{
width: 600px;
height: 400px;
background: #CCC;
margin: 0 auto;
}
#tab_menu
{
width: 200px;
height: 400px;
float: left;
background: #efefef;
}
#tab_content
{
width: 400px;
height: 400px;
float: left;
}
#con_one1
{
background: yellow;
width: 400px;
height: 400px;
} #con_one2
{
background: green;
width: 400px;
height: 400px;
}
#con_one3
{
background: blue;
width: 400px;
height: 400px;
}
.hover
{
background: yellow;
}
</style>
<script type="text/javascript">
function setTab(name,carsel,n) //carsel为游标,n为tab的数量
{
for(var i =1;i<=n;i++)
{
var oMenu = document.getElementById('one'+i);
var oContent = document.getElementById('con_'+name+i);
oMenu.className = i == carsel?"hover":"";
oContent.style.display = i ==carsel?"block":"none";
}
}
</script>
</head>
<body>
<div class="tab">
<div id="tab_menu">
<ul>
<li id="one1" onclick="setTab('one',1,3)">女装</li>
<li id="one2" onclick="setTab('one',2,3)">男装</li>
<li id="one3" onclick="setTab('one',3,3)">童装</li>
</ul>
</div>
<div id="tab_content">
<div id="con_one1">女装女装女装女装女装</div>
<div id="con_one2" style="display:none">男装男装男装男装男装</div>
<div id="con_one3" style="display:none">童装童装童装童装童装</div>
</div>
</div>
</body>
</html>
四、
补充:
用一个参数来实现
/*------------------一个参数实现--------------------*/
function setTab(n)
{
var aLi = document.getElementsByTagName('li');
var oContent = document.getElementById('tab_content');
var aDiv = oContent.getElementsByTagName('div');
var i =0;
for(i = 0;i<aLi.length; i++)
{
if(n == i)
{
aLi[i].className = "hover";
aDiv[i].style.display = "block";
}
else
{
aLi[i].className = "";
aDiv[i].style.display = "none";
}
}
} <div id="tab_menu">
<ul>
<!--<li id="one1" onclick="setTab('one',1,3)">女装</li>
<li id="one2" onclick="setTab('one',2,3)">男装</li>
<li id="one3" onclick="setTab('one',3,3)">童装</li>-->
<li id="one1" onclick="setTab(0)" class="hover">女装</li>
<li id="one2" onclick="setTab(1)">男装</li>
<li id="one3" onclick="setTab(2)">童装</li>
</ul>
</div>
JavaScript效果之选项卡的更多相关文章
- 二、JavaScript语言--JS基础--JavaScript进阶篇--选项卡切换效果
利用JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居 200万内购五环三居 140万安家东三环 北京首现零首付楼 ...
- 7、JavaScript总结——实现选项卡切换的效果
编程挑战 现在利用之前我们学过的JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居 200万内购五环三居 140万安家东三环 ...
- javascript与jQuery选项卡效果
HTML结构: <!doctype html><html><head><meta charset="utf-8"><title ...
- Javascript学习笔记2.2 Javascript与DOM选项卡(滑动门)案例详解
学习了DOM的知识,今天开始做些练习,想到了一个网页滑动门的特效,见下图: 1.通过建立索引实现 <!doctype html> <html> <head> < ...
- javascript效果:手风琴、轮播图、图片滑动
最近都没有更,就来几个效果充实一下. 都没有进行美化这步. 手风琴: 纯css: <!DOCTYPE html> <html lang="en"> < ...
- 常用js效果:选项卡切换
js选项卡,很多网站都会用到,我这里用jquery给整了一个简单但是却很实用的js选项卡,废话不多说,直接上代码: <style> .txtadsblk01{ width:200px;} ...
- 闲扯 Javascript 01 实现选项卡
javascript 实现选项卡 今天下午的两节课,在机房闲来没事 ,就学习了javascript 怎么获取HTML的标签,改变CSS样式,资料来源 智能社! <script> windo ...
- javascript简单的选项卡
实现一个简单的选项卡功能 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- 用JavaScript实现的选项卡
Codes wins arguments! <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...
随机推荐
- ConfigParser---python
# !/usr/bin/python # Filename:tcfg.py import ConfigParser config = ConfigParser.ConfigParser() confi ...
- atexit()函数
atexit()函数 头文件:#include<stdlib.h> 功 能: 注册终止函数(即main执行结束后调用的函数) 用 法: int atexit(void (*func)(v ...
- JavaScript模块化开发实例
最近接触了一些JavaScript开发的例子,在这里与大家一起分享一下: 例子:当我们一个团队在写Js文件的时候,你一个人写的JS代码自己可以看懂也可以维护,但是别人想对你的JS进行扩展的话,如果都在 ...
- the request doesn't contain a multipart/form-data or multipart/form-data stream, content type header
the request doesn't contain a multipart/form-data or multipart/form-data stream, content type header ...
- Struts, Namespace用法
最近在用SSH框架做一个项目,在使用Struts 的namespace时遇到不少问题,现在就对struts namespace 做一个简单的介绍吧.(本文从项目结构展开叙述) (第1次写博客, 写的不 ...
- python和django的一些小技巧(locals()...)
locals() 技巧: 思考一下我们对 current_datetime 的最后一次赋值: >>> import datetime >>> def current ...
- BZOJ 1231: [Usaco2008 Nov]mixup2 混乱的奶牛
Description 混乱的奶牛 [Don Piele, 2007] Farmer John的N(4 <= N <= 16)头奶牛中的每一头都有一个唯一的编号S_i (1 <= S ...
- Desert King
poj2728:http://poj.org/problem?id=2728 题意:给你n的点,每一个点会有一个坐标(x,y),然后还有一个z值,现在上你求一棵生成树,是的这棵生成树的所有边的费用/所 ...
- 配置.NET程序中最大HTTP并发连接数(默认为2)
方式一:代码 ServicePointManager.DefaultConnectionLimit = 方式二:配置 <system.net> <connectionManageme ...
- CAS单点登录配置[3]:服务器端配置
在准备工作,证书生成等工作完成后,本篇介绍服务器端的配置. JDK配置 1 我们将生成的cacerts文件分别拷贝到JDK目录下的jre/lib/security目录下及JRE对应的目录中,如果之前存 ...