JS实现简单Tab栏切换案例

JS实现简单Tab栏切换案例

本文主要详细介绍JS实现简单标签栏切换的案例。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

本文分享JS实现简单Tab栏切换的具体代码,供大家参考。具体内容如下

要求:

鼠标点击上面对应的标签页,下面页面的内容随之变化。

结构分析:

所有的东西都放在一个大箱子里,这个大箱子可以分为两个箱子:顶箱和底箱。

上面的框包含5个li和5个小标签,其中一个将被默认选中;

下面的框中还包含了五个div模块,其内容与上面的选项一一对应。目前,默认情况下只显示第一个div。

实现思路:

单击交换机选项卡部分。

Tab 栏切换有2个大的 模块

1.点击上面模块的其中一个选项卡,改变当前样式,背景颜色变为红色,字体颜色变为白色。而其他选项卡样式不变(独家创意)。

通过修改类名。

2.以下模块的内容将随着上述选项卡的变化而变化。所以下面的模块更改被写入click事件。

规律:

下面的模块显示的内容与上面的选项卡对应并匹配。

核心思路:

为上述模块中的所有li添加自定义属性,属性值从0开始作为索引号。

排他思想:

通过for循环遍历数组中的元素。进入循环后,先消除所有声部的样式,再给点击的当前声部添加样式。

通过

setAttribute(name,value)

创建自定义属性。name是指为元素设置的自定义属性,value是自定义属性添加的属性值。

通过

getAttribute(name)

获取元素的属性。名称是属性的名称。

默认情况下,会显示第一个选项卡对应的以下模块,需要添加inline style(style= display:block )。因为CSS内联样式比外部样式具有更高的优先级,所以它将首先显示。

和(项目[索引])。style.display= block)这句话也相当于创造了一种内联风格。

实施代码:

!文档类型html

html lang=en

meta charset=UTF-8

选项卡列切换/标题选项卡

风格

*{

边距:0;

填充:0;

}。选项卡{

宽度:800px

高度:45px

边框:1px纯色# ccc

边框-底部:1px纯色# c81623

背景:# fafafa

位置:相对;

边距:100px自动;

}。tab_list li{

宽度:160px

高度:45px

列表样式:无;

行高:45px

文本对齐:居中;

浮动:左;

}。tab_list。当前{

背景色:# c81623

颜色:# fff

}。项目{

宽度:800px

高度:200px

padding-top:40px;

/*行高:200px*/

字体大小:30px

颜色:# fff

文本对齐:居中;

正文-阴影:2px 2px 4px # 000000

背景:# efefef

/*不透明度:0.8;*/

top:47px;

位置:绝对;

}

/风格

/头

身体

div class=tab

div class=tab_list

保险商实验所

Li class=当前个人推荐/li

列表/李

李锚站/李

李排行榜/李

李歌手/李

/ul

/div

div class=tab_con

class= item one style= display:block 每日歌曲推荐/div

衷心推荐 itemtwo 好歌单,给最懂音乐的你/div

成瘾之声/div

新歌飙升榜/div

Class= itemfiv 歌手列表/分区

/div

/div

!-标签栏开关中有两个模块。

模块选项卡,点击其中一个,被点击的那个背景色会变成红色,其余的不变(独家想法)通过修改类名。-

!-下面显示的模块内容将随着上面的选项卡而变化,因此下面的模块变化将被写入click事件。

规则:以下模块的显示内容与上面的页签对应匹配。

-

脚本

var tab _ list=document . query selector(。tab _ list’);

var lis=tab _ list . query selector all( Li );

var items=document . query selector all(。item’);

//对于循环绑定click事件

for(var I=0;长度;i ){

列表[i]。setAttribute(index ,I);

列表[i]。onclick=function() {

//

for(var I=0;长度;i ){

列表[i]。class name=“”;

}

//留下你现在需要的东西

this . class name=" current ";

//内容模块如下图所示。

var index=this . getattribute( index );

console.log(索引);

//去掉其他项目,让它们隐藏起来

//只保留当前项目,让它显示出来

for(var I=0;iitems.lengthi ){

items[I]. style . display= none ;

}

items[index]. style . display= block ;

}

}

/脚本

/body

/html

达到效果:

单击其他选项。

这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

JS实现简单Tab栏切换案例