JS实现标签页效果(配合css)


Posted in Javascript onApril 03, 2013

实现的效果
JS实现标签页效果(配合css)
如上图所示为制作的标签页,我们想要实现的效果是当鼠标移到某一个标签的时候,在下面的内容区显示对应的内容,并且相应标签的颜色需要改变,如图中所示当前鼠标的位置在“标签1”上,则内容区域显示的内容为“我是内容1”,并且“标签1”的颜色要比“标签2”和“标签3”深一些,同样鼠标移到“标签2”和“标签3”的时候显示“我是内容2”和“我是内容3”。这样的效果是CSS和JS配合实现的。下面我们就来看看具体代码:

首先来看HTML代码

<!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=gb2312" /> 
<title>标签页效果</title> 
<link href="../CSS/tab.css" rel="stylesheet" type="text/css" /> 
<script language="JavaScript" type="text/javascript" src="../JS文件/jquery.js"></script> 
<script language="JavaScript" type="text/javascript" src="../JS文件/tab.js"></script> 
</head> 
<body> 
<ul id="tabfirst"> 
<li class="tabin">标签1</li> 
<li>标签2</li> 
<li>标签3</li> 
</ul> 
 <div id="contentnow" class="contentfirst contentin">我是内容1</div> 
<div id="contentnow" class="contentfirst">我是内容2</div> 
<div id="contentnow" class="contentfirst">我是内容3</div> 
</body> 
</html>

JS代码实现思路很简单,首先给每个标签项注册一个mouseover函数,当鼠标移到任何一个标签上的时候都会执行moveover函数体内的代码。函数体代码首先获取当前节点,将原来显示的内容进行隐藏,然后根据传入的节点index把对应于相应标签下的内容显示出来。在代码中我们可以看到除了对HTML中节点样式进行改动外还使用了setTimeout函数,该函数的作用是延迟函数的执行时间,下面代码中的延迟时间为300毫秒,也就是当鼠标移到标签后并不是立即执行而是延迟300毫秒后在执行,如果在300毫秒时间内鼠标移出标签区域则不再执行该代码。
$(document).ready(function(){ 
var timeoutid; 
$("#tabfirst li").each(function(index){ //每一个包装的li的JQuery对象都会执行function中的代码 
//index是当前执行这个function代码的li对应在所有li组成的数组中的索引值 
//有了index的值后,就可以找到当前标签对应的内容区域 
$(this).mouseover(function(){ 
var liNode = $(this); 
timeoutid = setTimeout(function(){ 
//将原来显示的内容进行隐藏 
$("div.contentin").removeClass("contentin"); 
//将原来有tabin属性的标签去掉tabin属性 
$("#tabfirst li.tabin").removeClass("tabin"); 
//将当前标签对应的内容区域显示出来 
$("div.contentfirst").eq(index).addClass("contentin"); 
//$("div.contentfirst:eq(" + index + ")").addClass("contentin"); 
//将当前标签增加tabin属性 
liNode.addClass("tabin"); 
},300); 
}).mouseout(function(){ 
clearTimeout(timeoutid); 
}); 
}); 
});

除了该效果外,我们还可以利用相同的原理给每个标签注册click函数,当点击每个标签的时候在原内容区域可以装载不同的页面或任意页面的一部分,有兴趣的话可以点击这里下载源码。该源码中包含了文中所提到的两种不同函数所实现的不同功能。
Javascript 相关文章推荐
使用Javascript和DOM Interfaces来处理HTML
Oct 09 Javascript
Javascript Tab 导航插件 (23个)
Jun 11 Javascript
Javascript load Page,load css,load js实现代码
Mar 31 Javascript
javascript实现显示和隐藏div方法汇总
Aug 14 Javascript
Backbone.js框架中简单的View视图编写学习笔记
Feb 14 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
Jan 20 Javascript
webpack 插件html-webpack-plugin的具体使用
Apr 09 Javascript
解决vue中监听input只能输入数字及英文或者其他情况的问题
Aug 30 Javascript
JS中call()和apply()的功能及用法实例分析
Jun 28 Javascript
layui递归实现动态左侧菜单
Jul 26 Javascript
Vue的Eslint配置文件eslintrc.js说明与规则介绍
Feb 03 Javascript
ng-alain的sf如何自定义部件的流程
Jun 12 Javascript
JS实现下拉框的动态添加(附效果)
Apr 03 #Javascript
js去字符串前后空格5种实现方法及比较
Apr 03 #Javascript
终于解决了IE8不支持数组的indexOf方法
Apr 03 #Javascript
jQuery布局插件UI Layout简介及使用方法
Apr 03 #Javascript
简单实例处理url特殊符号&amp;处理(2种方法)
Apr 02 #Javascript
JS获取浏览器版本及名称实现函数
Apr 02 #Javascript
js 火狐下取本地路径实现思路
Apr 02 #Javascript
You might like
据说是雅虎的一份PHP面试题附答案
2009/01/07 PHP
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
yii2 url重写并隐藏index.php方法
2018/12/10 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
2009/04/01 Javascript
测试你的JS的掌握程度的代码
2009/12/09 Javascript
通过下拉框的值来确定输入框是否可以为空的代码
2011/10/18 Javascript
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
javascript制作loading动画效果 loading效果
2014/01/14 Javascript
jQuery表格行上移下移和置顶的实现方法
2015/10/08 Javascript
关于Javascript中defer和async的区别总结
2016/09/20 Javascript
微信小程序 数据绑定及运算的简单实例
2017/09/20 Javascript
template.js前端模板引擎使用详解
2017/10/10 Javascript
Node.js中的不安全跳转如何防御详解
2018/10/21 Javascript
JS实现星星海特效
2019/12/24 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
django开发之settings.py中变量的全局引用详解
2017/03/29 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
2020/01/08 Python
python怎么判断模块安装完成
2020/06/19 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
会计学应届毕业生推荐信
2013/11/04 职场文书
社区十八大感言
2014/01/19 职场文书
大学竞选班长演讲稿
2014/04/24 职场文书
优秀毕业生求职信
2014/06/05 职场文书
大学生学习计划书
2014/09/15 职场文书
党员对照检查材料
2014/09/22 职场文书
教师见习报告范文
2014/11/03 职场文书
期末复习计划
2015/01/19 职场文书
明星邀请函
2015/02/02 职场文书
个人总结怎么写
2015/02/26 职场文书
求职信内容一般写什么?
2015/03/20 职场文书
会议开幕致辞怎么写
2016/03/03 职场文书
TS 类型兼容教程示例详解
2022/09/23 Javascript