效果图:

HTML:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link rel="stylesheet" href="css/style.css" />
<script src="js/script.js"></script>
</head>
<body>
<div class="body">
<div class="box" id="box">
<ul class="title">
<a href="#"><li id="t1" onclick="oclick('t1')">新闻</li></a>
<a href="#"><li id="t2" onclick="oclick('t2')">杂志</li></a>
<a href="#"><li id="t3" onclick="oclick('t3')">动漫</li></a>
<a href="#"><li id="t4" onclick="oclick('t4')">音乐</li></a>
</ul>
<div id="d1" style="display: none">
THIS IS 1
</div>
<div id="d2" style="display: none">
THIS IS 2
</div>
<div id="d3" style="display: none">
THIS IS 3
</div>
<div id="d4" style="display: none">
THIS IS 4
</div>
</div>
</div>
</body>
</html>

CSS:

    *{padding:; margin:;}
.box .title,.box .title li{padding:;margin:;}
.body{width: 1200px; height: 1000px; box-shadow: 0 0 5px gray; margin: 0 auto; border: 1px solid #808080;}
.box{width: 420px; height: 266px; box-shadow: 0 0 5px gray; margin: 200px auto; border: 1px solid #808080;}
.box .title{list-style: none; text-align: center;}
.box .title li{width:80px; height:40px; font:12px/40px "微软雅黑"; float:left; background:ghostwhite; border:1px solid #f2f2f2;}
.box .title a li:hover{background:#F2F2F2}
.box div{width:420px; height:220px; margin-top:46px;}

JS:

// This is Glunefish js function.
function oclick(x){var obj = document.getElementById(x);
obj.style.border='none';
obj.style.background='#fff';
var ttotal = ['t1','t2','t3','t4'];
for(var i=0;i<4;i++){
if(ttotal[i] == x){
boxchange(i) ;
ttotal.splice(i,1);
continue;}
}
for(var i=0;i<ttotal.length;i++){
var obj = document.getElementById(ttotal[i]);
obj.style.border='1px solid #f2f2f2';
obj.style.background='ghostwhite';}
}
function boxchange(x){
var dlist = ['d1','d2','d3','d4'];
for(var i=0;i<dlist.length;i++){
document.getElementById(dlist[i]).style.display='none'}
document.getElementById(dlist[x]).style.display='block';
}
onload = function(){oclick('t1');}

【原生JS】切换选项卡的更多相关文章

  1. 原生js实现选项卡样式切换的几种方式。

    先分享一个不能实现的实例(因为es5没有块作用域) for(var i=0; i<list.length; i++ ) { list[i].onclick = function(){ tabch ...

  2. 使用原生js实现选项卡功能实例教程

    选项卡是前端常见的基本功能,它是用多个标签页来区分不同内容,通过选择标签快速切换内容.学习本教程之前,读者需要具备html和css技能,同时需要有简单的javascript基础. 先来完成html部分 ...

  3. 原生js实现选项卡

    html代码: <div class="tab"> <ul> <li class="selected">图片</li& ...

  4. 原生js面向对象编程-选项卡(点击)

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. 一个简单且丑陋的js切换背景图片基础示例

    不多说,直接上代码,非常基础的一个原生js切换元素背景图片范例 <html> <head> <meta http-equiv="Content-Type&quo ...

  6. 原生JS实现各种经典网页特效——Banner图滚动、选项卡切换、广告弹窗等

    在制作网页过程中,我们可能会遇到各种常用的经典网页特效,比如Banner图片滚动.选项卡循环播放.右下角广告弹窗.评论提交展示.选项动态增删.剪刀石头布小游戏等等等...是不是感觉都见到过这些场景.那 ...

  7. 原生js实现tab选项卡里内嵌图片滚动特效代码

    <!DOCTYPE HTML><html lang="en-US"><head><meta charset="UTF-8&quo ...

  8. 原生js实现tab切换

    //通过原生js实现table切换<html><head><meta http-equiv="Content-Type" content=" ...

  9. 标签页(tab)切换的原生js,jquery和bootstrap实现

    概述 这是我在学习课程Tab选项卡切换效果时做的总结和练手. 原课程中只有原生js实现,jquery和bootstrap实现是我自己补上的. 本节内容 标签页(tab)切换的原生js实现 标签页(ta ...

  10. 原生JS实现全屏切换以及导航栏滑动隐藏及显示——重构前

    思路分析: 向后滚动鼠标滚轮,页面向下全屏切换:向前滚动滚轮,页面向上全屏切换.切换过程为动画效果. 第一屏时,导航栏固定在页面顶部,切换到第二屏时,导航条向左滑动隐藏.切换回第一屏时,导航栏向右滑动 ...

随机推荐

  1. agc015F Kenus the Ancient Greek

    题意: 有$Q$次询问,每次给定$X_i$和$Y_i$,求对于$1\leq x \leq X_i , 1 \leq y \leq Y_i$,$(x,y)$进行辗转相除法的步数的最大值以及取到最大值的方 ...

  2. 通过sql 向数据库插入多行语句

    我们知道通过insert into 表名(列名) values(值)是向表中插入一条语句,可是当我们需要向数据库插入多条语句时,应该怎么做呢? 可以通过如下格式的sql 语句来实现一次向数据库插入多行 ...

  3. LintCode刷题笔记-- Edit distance

    标签:动态规划 描述: Given two words word1 and word2, find the minimum number of steps required to convert wo ...

  4. ylbtech-自信:自信

    ylbtech-自信:自信 自信心(confidence),在心理学中,与其最接近的是班杜拉(A.Bandura)在社会学习理论中提出的自我效能感 (self-efficacy)的概念,是指个体对自身 ...

  5. 杨柳絮-Info:对抗杨柳絮的7种方法和2种防治手段

    ylbtech-杨柳絮-Info:对抗杨柳絮的7种方法和2种防治手段 园林养护人员在对抗杨柳絮上 主要有以下两种方法↓↓ 1.化学方法 化学方法是通过激素等调节剂来抑制植物发芽分化,达到减少杨柳开花的 ...

  6. SAS信用评分之模型拟合以及验证的大坑

    SAS信用评分之模型拟合以及验证的大坑 今天的内容是来讲我这段时间被模型拟合和模型验证坑过的那些事.我也是千辛万苦终于是把模型给建出来了.此处应该有掌声.因为模型老是效果不好这件事,我躲在被窝里哭了好 ...

  7. Effective Modern C++:07并发API

    C++11的志伟功勋之一,就是将并发融入了语言和库中,因此在C++的历史上,程序员可以首次跨越所有平台撰写具有标准行为的多线程程序. 35:优先选用基于任务而非基于线程的程序设计 如果需要以异步的方式 ...

  8. img标签src不给路径就会出现边框

    <img/>在src加载失败或没有给的,浏览器会自动给img加上边框. 如下图这样: 产品觉得影响美观,一定要pass掉. 原码是这样: .ctn{ position: relative; ...

  9. mysql操作手册

    开启日志:https://segmentfault.com/a/1190000003072237 常用词:  Mysql:一种免费的跨平台的数据库系统  E:\mysql:表示是在dos 命令窗口下面 ...

  10. Oracle函数——MINUS

    解释 “minus”直接翻译为中文是“减”的意思,在Oracle中也是用来做减法操作的,只不过它不是传统意义上对数字的减法,而是对查询结果集的减法.A minus B就意味着将结果集A去除结果集B中所 ...