很low 别喷,

template代码:

<div class="tab-itme">
<ul @click="clickit()">
<li><router-link active="#/index" to="index">首页</router-link></li>
<li><router-link active="#/item" to="item">项目列表</router-link></li>
<li><router-link active="#/myloan" to="myloan">我要借款</router-link></li>
<li><router-link active="#/Safety" to="Safety">安全保障</router-link></li>
<li><router-link active="#/about" to="about">关于我们</router-link></li>
<li><router-link active="#/Account" to="Account">我的账户</router-link></li>
</ul>
</div>

javascript代码:

<script>
export default {
data() {
return {
win:''
}
},
mounted:function(){
this.win = window.location.hash.split('/')[1]
},
methods:{
clickit(){
this.win = window.location.hash.split('/')[1]
}
},
watch:{
win:function(n){
switch(n){
case 'index' :
document.querySelector('[active="#/index"]').classList.add('active')
break;
case 'item':
document.querySelector('[active="#/item"]').classList.add('active')
break;
case 'myloan':
document.querySelector('[active="#/myloan"]').classList.add('active')
break;
case 'Safety':
document.querySelector('[active="#/Safety"]').classList.add('active')
break;
case 'about':
document.querySelector('[active="#/about"]').classList.add('active')
break;
case 'Account':
document.querySelector('[active="#/Account"]').classList.add('active')
break;
}
}
}
}
</script>

css样式(less)只供参考:

.active{
border-bottom: 3px solid #D9BD76;
}
.tab-itme{
display: inline-block;
ul{
padding: 0;
margin:0;
li{
font-size: 18px;
list-style: none;
float: left;
line-height: 80px;
height: 80px;
padding: 0 20px;
a{
color:#000;
text-decoration: none;
padding-bottom: 5px;
}
}
li a:hover{
border-bottom: 3px solid #D9BD76;
}
} }

router代码:

import Vue from 'vue'
import Router from 'vue-router'
import Home from '../components/Home'
import index from '../components/index'
import about from '../components/about.vue'
import Account from '../components/Account.vue'
import item from '../components/item.vue'
import myloan from '../components/myloan.vue'
import Safety from '../components/Safety.vue'
Vue.use(Router) export default new Router({
routes:[
{
path:'/',
name: Home,
component:Home,
redirect:'/index',
children:[
{
path:'/index',
name: index,
component:index
},{
path:'/about',
name: about,
component:about
},{
path:'/Account',
name: Account,
component:Account
},{
path:'/item',
name: item,
component:item
},{
path:'/myloan',
name: myloan,
component:myloan
},{
path:'/Safety',
name: Safety,
component:Safety
}
]
}
]
})

vue导航栏实时获取URL设置当前样式,刷新也存在!的更多相关文章

  1. iOS 设置导航栏之二(设置导航栏的颜色、文字的颜色、左边按钮的文字及颜色)

                      #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicati ...

  2. Ecshop导航栏标题栏的伪静态设置

    当Ecshop的伪静设置成功之后,左侧的分类标签,包括具体的产品页面都可以顺利的打开伪静态页面,但是点击导航栏,或者标题栏的时候,却还是之前的数据库标签页的方式,这是怎么一回事呢? 这是由于,Ecsh ...

  3. Vue导航栏在特定的页面不显示~

    最近写vue项目遇到一些问题,我把导航栏组件放在了app.vue中,让他在每个页面都能显示了,但遇到了一个问题,在登录以及注册页面导航栏是不合理不允许存在的 解决方法: 公共模块的内容可以放在App. ...

  4. iOS开发——导航栏的一些小设置

    1.导航栏的隐藏与显示:navigationBarHidden - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:YES]; ...

  5. iOS导航栏的背景颜色设置

    方法一: (1) self.navigationController.navigationBar.barStyle = UIBarStyleDefault; self.navigationContro ...

  6. 使用iframe实现导航栏在上面,下面的窗体刷新

    1.做一个导航栏,并设置跳转链接的<a>标签的name属性或id 此处演示name标签 <!-- 导航条 --> <nav id="navAjax" ...

  7. 关于获取、设置css样式封装的函数入门版

    <html> <head> <meta charset="UTF-8"> <title>CSS样式的获取和设置:简单版</ti ...

  8. vue导航栏制作

    1,在components新建commnn目录,然后再新建nav目录,在此目录下新建nav-bottom.vue文件和nav-item.vue文件 2,nav-bottom.vue中的内容: < ...

  9. 导航栏NavigationBar的按钮设置

    有时候在自定义navigationBar的左右按钮的时候,button的图片会显得很大,个人感觉原因有以下几种情况: 1.使用的是UIButton直接加在navigationBar上面 2.自定义了一 ...

随机推荐

  1. poj1308(并查集)

    题目链接:http://poj.org/problem;jsessionid=436A34AE4BE856FB2DF9B264DCA9AA4E?id=1308 题意:给定一些边让你判断是否构成数. 思 ...

  2. 修改bootstrap-table中的分页样式

    使用bootstrap-table时,使用$("")选择器没办法选中下方的分页button按钮,可能跟它是动态生成的有关吧. 最终找到与之对应的js(bootstrap-table ...

  3. [leetcode]528. Random Pick with Weight按权重挑选索引

    Given an array w of positive integers, where w[i] describes the weight of index i, write a function  ...

  4. 我的第一个博客——Fragment遇到的问题

    最近项目中使用fragment时遇到了一些问题: 1.fragment的刷新问题. 解决:我的情况是有多个fragment时,只需要刷新其中几个界面.之前我在网上看到的一些方法.如下: 首先在Adap ...

  5. spring boot 访问项目时加项目名称

    pringboot 项目一般直接地址加端口就可以访问了,不像放在tomcat里面还需要加上项目名. 现在,想访问的时候加上项目名用来区分,只要在配置文件里面加上 server.context-path ...

  6. php使用fputcsv进行大数据的导出

    为了实验大数据的导出,我们这里先自已创建一张大表,表结构如下: CREATE TABLE `tb_users` ( `id` int(11) unsigned NOT NULL AUTO_INCREM ...

  7. [z]oracle优化http://jadethao.iteye.com/blog/1613943

    [sql] view plaincopy SQL> create table t as select 1 id,object_name from dba_objects; Table creat ...

  8. spirng中的asm与jdk不兼容<已解决>

    转载自:spirng中的asm与jdk不兼容<已解决> 前言 不知道前面对eclipse做了什么,使用maven来创建项目,然后转成web,启动的时候一直报错.我弄了好久,还是无法解决,先 ...

  9. B+树与B-树

    前面已经介绍过B-树,接下来,我们主要介绍一下B+树. 1.B+树的概念 B+树是应文件系统所需而生的一种B-树和变形树.一棵m阶B+树和m阶的B-树的差异在于: (1)有n棵子树的结点中含有n个关键 ...

  10. materia官网地址

    https://materializecss.com/autocomplete.html