一、vue如何实现?

代码:

 <!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://cdn.bootcss.com/vue/2.4.2/vue.min.js"></script>
<style type="text/css">
li{
list-style: none;
float: left;
margin-left: 5px;
background: yellow;
padding: 1px;
border-radius: 3px;
border:1px solid #999;
}
.active{
color:red;
}
</style>
</head> <body>
<div id="example">
<ul>
<li v-bind:class=" activeClass==index ? 'active' : '' " v-for="(item,index) in list" @click="getItem(index)">{{item.name}}</li>
</ul>
</div>
<script>
var example1 = new Vue({
el: '#example',
data: {
activeClass: -1,
list:[
{"typeId":"1","name":"按钮一","number":"50"},
{"typeId":"2","name":"按钮二","number":"50"},
{"typeId":"3","name":"按钮三","number":"50"},
{"typeId":"4","name":"按钮四","number":"50"},
{"typeId":"5","name":"按钮五","number":"50"},
{"typeId":"6","name":"按钮六","number":"50"},
{"typeId":"7","name":"按钮七","number":"50"},
{"typeId":"8","name":"按钮八","number":"80"},
],
},
watch: { },
methods: {
getItem: function (index) {
this.activeClass = index;
}
}
})
</script>
</body> </html>

效果图:

二、jq如何实现?

代码:

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>刘晓慧</title>
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"></script>
<style type="text/css">
li{
list-style: none;
float: left;
margin-left: 5px;
background: yellow;
padding: 1px;
border-radius: 3px;
border:1px solid #999;
}
.active{
color:red;
}
</style>
</head>
<body>
<div id="example">
<ul>
<li>按钮一</li>
<li>按钮二</li>
<li>按钮三</li>
<li>按钮四</li>
<li>按钮五</li>
<li>按钮六</li>
<li>按钮七</li>
<li>按钮八</li>
</ul>
</div>
</body>
</html>
<script type="text/javascript">
$("li").click(function(){
$("li").removeClass("active");
$(this).addClass("active");
})
</script>

效果图:同上

三、原生js如何实现?

代码:

 <!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<title>Title</title>
<style type="text/css">
li{
list-style: none;
float: left;
margin-left: 5px;
background: yellow;
padding: 1px;
border-radius: 3px;
border:1px solid #999;
}
.active{
color:red;
}
</style>
</head> <body>
<div id="example">
<ul>
<li>按钮一</li>
<li>按钮二</li>
<li>按钮三</li>
<li>按钮四</li>
<li>按钮五</li>
<li>按钮六</li>
<li>按钮七</li>
<li>按钮八</li>
</ul>
</div>
</body> </html>
<script type="text/javascript">
var buttons=document.getElementsByTagName("li");
var l=buttons.length;
for(var i=0;i<l;i++){
buttons[i].onclick=function(){
for(var j=0;j<l;j++){
if(this==buttons[j]){
this.className="active";
}else{
buttons[j].className="";
} }
}
}
</script>

效果图:同上

代码2(hwt):

 <!DOCTYPE html>
<html>
<head>
<title>练习</title>
<meta name="keywords" content="keyword1,keyword2,keyword3">
<meta name="description" content="this is my page">
<meta name="content-type" content="text/html; charset=UTF-8">
</head>
<style>
.btn{background-color:yellow;}
</style>
<script type="text/javascript">
function change(obj){
var btn = document.querySelectorAll('.btn');
for(var i=0;i<btn.length;i++){
btn[i].style.color = "black";
}
document.getElementById(obj).style.color = "red";
}
</script>
<body>
<button type="button" value="" class="btn" onclick="change('a')" id="a">按钮一</button>
<button type="button" value="" class="btn" onclick="change('b')" id="b">按钮二</button>
<button type="button" value="" class="btn" onclick="change('c')" id="c">按钮三</button>
<button type="button" value="" class="btn" onclick="change('d')" id="d">按钮四</button>
<button type="button" value="" class="btn" onclick="change('e')" id="e">按钮五</button>
<button type="button" value="" class="btn" onclick="change('f')" id="f">按钮六</button>
<button type="button" value="" class="btn" onclick="change('g')" id="g">按钮七</button>
<button type="button" value="" class="btn" onclick="change('h')" id="h">按钮八</button>
</body>
</html>

导航栏中各按钮在点击当前按钮变色其他按钮恢复为原有色的实现方法(vue、jq、原生js)的更多相关文章

  1. 【代码笔记】iOS-在导航栏中显示等待对话框

    一,效果图. 二,代码. ViewController.m #import "ViewController.h" @interface ViewController () @end ...

  2. bootstrap如何去除自带的样式----导航栏中的菜单实现平滑的过渡到对应的菜单区域-------动态跟换模态框中的内容

    问题1:如何去除bootstap中css中自带的overflow:hidden这个样式 今天遇见在bootstap中轮播图上的  附带图  片不能够显示出来,图片始终有一部分的高度  被隐藏了 后来通 ...

  3. 利用overflow实现导航栏中常 出现的倒三角下拉小图标

    常用网页界面中,导航栏中的倒三角下拉小图标实现,可用overflow: 效果如右图: .Triangle{position:relative;width:280px;height:15px;} ;ov ...

  4. window10删除导航栏中的onedrive

    前面介绍了如何删除导航栏中的“快速访问”,对于一个根本用不着的“oneDrive”肯定也得搞掉. 0.处理前: 1.卸载onedrive是不能清除导航栏里面的onedrive的,进入注册表regedi ...

  5. magento导航栏中如何加入home主页

    magento在导航栏中加入home主页是很简单的,几个步骤即可在magento导航栏中加入home主页! 下面简单介绍下如何在magento导航栏中加入home主页: 首先我们打开对应应用的模板文件 ...

  6. 在开源UOJ的导航栏中添加新页面链接

    前言 刚用开源UOJ搭建OJ成功时就想在导航栏那里添加一个站内页面链接,无奈当时乱搞水平低,网上也没有教程,不晓得怎么弄 今天突然来了闲情乱搞一通,结果还真乱搞成了...特意写下为后来人少走点弯路 前 ...

  7. SAP CRM 将组件整合至导航栏中

    到现在,我们已经可以让组件独立地显示.我们只是运行它.让它显示在Web UI中.让我们把组件整合进导航栏,使我们可以在正常登录Web UI时访问它. 步骤一: 为你的UI组件主窗体创建一个内向插件. ...

  8. MMDrawerController在表视图和导航栏中的使用

    1.如果不在APPDelegate引入MMDrawerController框架,那么就要注意在需要点击的视图控制器中的对象的获取. //工程中标签视图控制器 MainTabBarViewControl ...

  9. 关于uni-app导航栏中 中间大图标的设置

    在uni-app的开发过程中,想要将位于中间的图标设置更大,通过一般的更改导航栏图标大小方式实现不了.经过查看官方文档可以发现,我们可以通过midbutton来设置中间tabbar的样式. 但前提是, ...

随机推荐

  1. 构建stm32最小系统板注意事项

    由于学习工作的需要自己定制stm32系统板,以下将关键的注意事项进行解释,欢迎交流.(以stm32f103为例) 1.VBAT引脚 在主流的设计中,VBAT与0欧的电阻串联,接至3.3V. 2.OSC ...

  2. 外贸建站之图片预加载JS代码分享

    外贸建站之图片预加载JS代码分享 function preloadimg() { setTimeout(function() { new Image().src = "images/2017 ...

  3. 一个简单小技巧实现手机访问.html文件网页效果

    注册登录Github不解释 settings设置往下拉 选择一个主题上传代码文件到code 打开这个文件选择此时的网址 在网址前面加上 这段代码 http://htmlpreview.github.i ...

  4. Java多线程处理List数据

    实例1: 解决问题:如何让n个线程顺序遍历含有n个元素的List集合 import java.util.ArrayList; import java.util.List; import org.apa ...

  5. c++ 单元测试框架 gmock 深度剖析

    c++ 单元测试框架 gmock 深度剖析 随着微服务和CI的流行,在目前的软件工程领域中单元测试可以说是必不可少的一个环节,在TDD中,单元测试更是被提高到了一个新的高度.但是很多公司由于很多不同的 ...

  6. caffe中train过程的train数据集、val数据集、test时候的test数据集区别

    val是validation的简称.training dataset 和 validation dataset都是在训练的时候起作用.而因为validation的数据集和training没有交集,所以 ...

  7. elastic-job集成到springboot教程,和它的一个异常处理办法:Sharding item parameters '1' format error, should be int=xx,int=xx

    先说这个Sharding item parameters '1' format error, should be int=xx,int=xx异常吧,这是在做动态添加调度任务的时候出现的,网上找了一会没 ...

  8. 洛谷P2611 信息传递

    并查集裸题,记录每个点的胜读,取个min就好了 #include<stdio.h> #include<string.h> #include<algorithm> u ...

  9. keil在线烧录突然提示 No target connected #

    keil在线烧录突然提示 No target connected 运行环境 IDE:keil uvsion5 微处理器:STM32F0xx 系列 烧录器:ST-LINK/V2 问题描述 烧录新程序并进 ...

  10. oracle 11g 安装步骤

    指定安装路径 输入数据库名(cwbpm),(按照自己要求输入,可以直接用默认库名) 输入密码(自定义):123456 (自定义密码) 下一步 选择“是” 点击完成,开始安装数据库 安装完成后会弹出页面 ...