拼了命学习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效果之选项卡的更多相关文章

  1. 二、JavaScript语言--JS基础--JavaScript进阶篇--选项卡切换效果

    利用JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居     200万内购五环三居 140万安家东三环     北京首现零首付楼 ...

  2. 7、JavaScript总结——实现选项卡切换的效果

    编程挑战 现在利用之前我们学过的JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居    200万内购五环三居 140万安家东三环 ...

  3. javascript与jQuery选项卡效果

    HTML结构: <!doctype html><html><head><meta charset="utf-8"><title ...

  4. Javascript学习笔记2.2 Javascript与DOM选项卡(滑动门)案例详解

    学习了DOM的知识,今天开始做些练习,想到了一个网页滑动门的特效,见下图: 1.通过建立索引实现 <!doctype html> <html> <head> < ...

  5. javascript效果:手风琴、轮播图、图片滑动

    最近都没有更,就来几个效果充实一下. 都没有进行美化这步. 手风琴: 纯css: <!DOCTYPE html> <html lang="en"> < ...

  6. 常用js效果:选项卡切换

    js选项卡,很多网站都会用到,我这里用jquery给整了一个简单但是却很实用的js选项卡,废话不多说,直接上代码: <style> .txtadsblk01{ width:200px;} ...

  7. 闲扯 Javascript 01 实现选项卡

    javascript 实现选项卡 今天下午的两节课,在机房闲来没事 ,就学习了javascript 怎么获取HTML的标签,改变CSS样式,资料来源 智能社! <script> windo ...

  8. javascript简单的选项卡

    实现一个简单的选项卡功能 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  9. 用JavaScript实现的选项卡

    Codes wins arguments! <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...

随机推荐

  1. MVC + JQUERY + AJAX

  2. Tekla Structures 使用类库概览

    Tekla Structures 2016 已经发布了,使用了 Ribbon 的全新 UI 风格,比以前要漂亮许多. 不过功能方面貌似没啥大的改进,感觉天宝的主要精力都投入到了混凝土模块上,忙着和别人 ...

  3. 4071: [Apio2015]巴邻旁之桥

    Description 一条东西走向的穆西河将巴邻旁市一分为二,分割成了区域 A 和区域 B. 每一块区域沿着河岸都建了恰好 1000000001 栋的建筑,每条岸边的建筑都从 0 编号到 10000 ...

  4. OUTLOOK连EXCHANGE,配置POP3时跳出错误问题

    "Authentication failed because outlook doesnt support any Resolved Question: "Authenticati ...

  5. 【BZOJ 1010】 [HNOI2008]玩具装箱toy (斜率优化)

    1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 9330  Solved: 3739 Descriptio ...

  6. pay lip service to

    Understanding Progressive Enhancement中看到了这句话: Concerned with content availability, overall accessibi ...

  7. 数据挖掘十大经典算法(5) 最大期望(EM)算法

    在统计计算中,最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模型中寻找参数最大似然估计的算法,其中概率模型依赖于无法观测的隐藏变量(Lat ...

  8. 【HDOJ】4585 Shaolin

    Set可解,Treap也可解.(1) Treap /* */ #include <iostream> #include <string> #include <map> ...

  9. 人一生必看的100部电影(全球最佳电影排名榜TOP250)

    人一生必看的100部电影(全球最佳电影排名榜TOP250) 人的一生能看多少部电影?假设我们每周都看一部,从10岁看到80岁将会看3640部.但是我们也不可能喜欢这全部的电影.大多数的可能,我们会根据 ...

  10. 把调试好的SQL语句转换为JAVA代码小工具

    关键点:Pattern实现SQL拆解.ZeroClipboard.js实现复制到剪切板 主要代码: <%@ page language="java" import=" ...