js+css实现tab菜单切换效果的方法


Posted in Javascript onJanuary 20, 2015

本文实例讲述了js+css实现tab菜单切换效果的方法。分享给大家供大家参考。具体实现方法如下:

index.css如下:

* {  

    margin: 0px;  

    padding: 0px;  

}  

body {  

    width: 600px;  

    margin: 0 auto;  

    background-color: silver;  

}  

  

#contanier {  

    background-color: yellow;  

    width: 600px;height: 400px;  

}  

  

#tabNavi {  

    width: 600px;height: 30px;  

    background-color: #00bfff;  

    text-decoration: none;  

    list-style-type: none;  

}  

  

#tabNavi li {  

    float: left;  

    margin-right: 7px;  

     background-color: #008b8b;  

    color: white;  

    cursor: pointer;  

    width: 60px;  

    height: 28px;  

    line-height: 30px;  

    text-align: center;  

}  

#content {  

    width: 600px;height: 370px;  

    background-color: white;  

}

index.html如下:

<!DOCTYPE html>  

<html xmlns="http://www.w3.org/1999/xhtml">  

<head>  

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>  

    <title>js实现tab菜单动态切换效果</title>  

    <link href="css/index.css" rel="stylesheet" />  

    <script type="text/javascript">  

        function gel(id) {  

            return document.getElementById(id);  

        }  

  

        var arr = [  

            { "title": "新闻", "content": "这是新闻频道" },  

            { "title": "财经", "content": "这是财经频道" },  

            { "title": "娱乐", "content": "这是娱乐频道" },  

            { "title": "体育", "content": "这是体育频道" },  

            { "title": "汽车", "content": "这是汽车频道" },  

            { "title": "视频", "content": "这是视频频道" },  

            { "title": "生活", "content": "这是生活频道" }  

        ];  

  

        window.onload = function() {  

            for (var i = 0; i < arr.length; i++) {  

                var liNew = document.createElement("li");  

                liNew.innerHTML = arr[i].title;  

                gel("tabNavi").appendChild(liNew);  

                //在这些li上面都绑定点击事件,就需要给他们每一个赋一个属性(最好是id)  

                liNew.setAttribute("id", i);  

                  

                liNew.onclick = function () {  

                   var navs = gel("tabNavi").childNodes;  

                    //清除所有颜色  

                   for (var j = 0; j < navs.length; j++) {  

                       if (navs[j].nodeType == 1) {  

                           navs[j].style.backgroundColor ="#008b8b";  

                       }  

                    }  

  

                    this.style.backgroundColor = "red";  

                    gel("content").innerHTML = arr[this.id].content;  

                };  

            }  

        };  

    </script>  

</head>  

<body>  

    <div id="contanier">  

        <ul id="tabNavi"></ul>  

        <div id="content" class="content"></div>  

    </div>  

</body>  

</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
表单类各种类型(文本框)失去焦点效果jquery代码
Apr 26 Javascript
原生JS实现表单checkbook获取已选择的值
Jul 21 Javascript
多种方法判断Javascript对象是否存在
Sep 22 Javascript
验证控件与Button的OnClientClick事件详细解析
Dec 04 Javascript
JQuery报错Uncaught TypeError: Illegal invocation的处理方法
Mar 13 Javascript
JavaScript实现的简单拖拽效果
Jun 01 Javascript
jquery对所有input type=text的控件赋值实现方法
Dec 02 Javascript
基于Vue实现关键词实时搜索高亮显示关键词
Jul 21 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
Apr 04 Javascript
vue2配置scss的方法步骤
Jun 06 Javascript
vue 使用 canvas 实现手写电子签名
Mar 06 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
Dec 10 Vue.js
jQuery中Ajax的get、post等方法详解
Jan 20 #Javascript
js动态切换图片的方法
Jan 20 #Javascript
JavaScript 基本概念
Jan 20 #Javascript
自己动手手写jQuery插件总结
Jan 20 #Javascript
JavaScript学习心得之概述
Jan 20 #Javascript
DOM基础教程之使用DOM
Jan 19 #Javascript
DOM基础教程之模型中的模型节点
Jan 19 #Javascript
You might like
PHP 数据库树的遍历方法
2009/02/06 PHP
Zend Framework入门知识点小结
2016/03/19 PHP
js常见表单应用技巧
2008/01/09 Javascript
Javascript 中的 &amp;&amp; 和 || 使用小结
2010/04/25 Javascript
js 实现图片预加载(js操作 Image对象属性complete ,事件onload 异步加载图片)
2011/03/25 Javascript
javascript复制对象使用说明
2011/06/28 Javascript
jquery中val()方法是从最后一个选项往前读取的
2015/09/06 Javascript
JQuery+Ajax实现数据查询、排序和分页功能
2015/09/27 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
2016/01/04 Javascript
详解jQuery的表单验证插件--Validation
2016/12/21 Javascript
vuejs2.0实现一个简单的分页示例
2017/02/22 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
微信小程序图片自适应支持多图实例详解
2017/06/21 Javascript
React-Native使用Mobx实现购物车功能
2017/09/14 Javascript
webpack4的迁移的使用方法
2018/05/25 Javascript
jsonp跨域获取百度联想词的方法分析
2019/05/13 Javascript
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
vue 实现根据data中的属性值来设置不同的样式
2020/08/04 Javascript
vue中重定向redirect:‘/index‘,不显示问题、跳转出错的完美解决
2020/09/28 Javascript
python先序遍历二叉树问题
2017/11/10 Python
python使用pymongo操作mongo的完整步骤
2019/04/13 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
LightInTheBox法国站:中国跨境电商
2020/03/05 全球购物
好家长事迹材料
2014/01/23 职场文书
青年文明号复核材料
2014/02/11 职场文书
暑期培训随笔感言
2014/03/10 职场文书
竞选学生会主席演讲稿
2014/04/24 职场文书
祖国在我心中的演讲稿
2014/05/04 职场文书
奥巴马连任演讲稿
2014/05/15 职场文书
2015年推普周活动总结
2015/03/27 职场文书
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
2021/04/07 HTML / CSS
python 用递归实现通用爬虫解析器
2021/04/16 Python
MySQL之select、distinct、limit的使用
2021/11/11 MySQL
《极主夫道》真人电影正式预告 定档6月3日上映
2022/04/05 日漫