<template>
<div class="expense-center">
<div class="fl expense-left">
<p class="left-titles">费用中心</p>
<ul class="order-con">
<router-link to="/control-home/expense-center/my-order "><li @click="orderOne(0)" :class="clickColor==0?'click-color':'default-color'">我的订单</li></router-link>
<router-link to="/control-home/expense-center/renew-manage"><li class="default-color" @click="orderOne(1)" :class="clickColor==1?'click-color':'default-color'">续费管理</li></router-link>
<li class="order-par default-color">
<div @click="orderOne(2)" :class="clickColor==2?'click-color':'default-color'">发票管理<i class="order-close" :class="orderChildOne?'orderOpen':'order-close'"></i></div>
<ul class="order-child" v-show="orderChildOne" >
<li>发票索取</li>
<li>发票列表</li>
<li>发票信息管理</li>
<li>发票寄送地址管理</li>
</ul>
</li>
<li class="order-par default-color">
<div @click="orderTwo(3)" :class="clickColor==3?'click-color':'default-color'">合同管理<i class="order-close" :class="orderChildTwo?'orderOpen':'order-close'"></i></div>
<ul class="order-child" v-show="orderChildTwo">
<li>合同申请</li>
<li>合同管理</li>
</ul>
</li>
</ul>
</div>
<div class="fl expense-right">
<transition name="move" mode="out-in">
<router-view></router-view>
</transition>
</div>

</div>
</template>

<script>
export default {
data() {
return {
orderChildOne:false,//点击子列表显示隐藏
orderChildTwo:false,
clickColor:0,//点击对应的颜色
}
},
methods: {
orderOne:function(index){//点击显示子列表或隐藏子列表
if(index==1){//点击下标为2的时候下标为3也展开,实际效果是不展开的,加上判断就不会出现这种情况了
this.clickColor=index;
}else{
this.orderChildOne=!this.orderChildOne;
this.clickColor=index;
}

},
orderTwo:function(index){
this.orderChildTwo=!this.orderChildTwo;
this.clickColor=index;
}
}
};
</script>

<style lang="scss">
@mixin padding{
padding-bottom:2000px;
margin-bottom:-2000px;
}
@mixin boxsizing{
box-sizing:border-box;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
}
@mixin position{
position:absolute;
left: 148px;
top:15px;
}
.expense-center{
background:#f1f1f1;
}
.left-titles{
height:70px;
line-height:70px;
text-align:center;
font-size:18px;
color:#171f2a;
}
.expense-left{
width:180px;
background: #f1f1f1;
@include padding;
overflow:hidden;
}
.expense-right{
width:85%;
margin-top: 20px;
padding: 0 18px 60px 18px;
@include boxsizing;
overflow: hidden;
@include padding;
}
.order-con{
text-align:center;
line-height:40px;
font-size:14px;
color:#171f2a;
}
.default-color{
color:#171f2a;
background: #f1f1f1;
}
.click-color{
color:#42aeec;
background:#fff;
}
.order-par{
position:relative;
}
.order-child{
display:block;
font-size:12px;
line-height:40px;
text-align:left;
margin-left:80px;
color:#666;
}
.order-close{
display:inline-block;
width:6px;
height:10px;
background:url(../../../assets/images/fy-xfclose.gif) no-repeat;
background-size:100% 100%;
@include position;
}
/*修改样式*/
.orderOpen{
display:inline-block;
width:10px;
height:6px;
background:url(../../../assets/images/fx-xfopen.gif) no-repeat;
background-size:100% 100%;
@include position;
}

</style>

vue中遇到的一个点击展开或收起并且改变背景颜色的问题。的更多相关文章

  1. js 点击展开、收起

    //点击展开.收起 window.onload=function(){ var current=document.getElementsByTagName('li')[0]; document.bod ...

  2. Easyui之datagrid实现点击单元格修改单元格背景颜色

    前段时间有个需求中有点击datagrid的单元格实现某种事件,调用datagrid的onclickCell这个方法很容易实现,但是体验不好啊,完全不知道自己刚才点击的是哪个单元格,然后就尝试单击单元格 ...

  3. iOS 创建多个button实现点击改变背景颜色

    工程中需要实现与UISegmentedControl效果相似的一排一共十个button,如下图.但是SegmentedControl修改不太方便,就用button替代, 循环创建十个button,点击 ...

  4. 解决点击cell时,UILabel的背景颜色消失的问题

    -(void)setSelected:(BOOL)selected animated:(BOOL)animated{ [super setSelected:selected animated:anim ...

  5. xml中,button改变背景颜色方法

    在画几个设置界面,用到了button控件,对于button空间的背景色在不同状态下的颜色改变方法,做了一下尝试,发现了两种背景颜色改变的方法,就总结了下. 方法一尝试了好多遍才好,要点在于,在sele ...

  6. vue中使用vue-i18n 一个简单的国际化操作

    1.安装:npm install vue-i18n --save-dev 2.在main.js文件中引入: import VueI18n from 'vue-i18n' Vue.use(VueI18n ...

  7. vue中解决拖动和点击事件的冲突

    BUG说明: 鼠标上下方向拖拽,如果松开时鼠标位于悬浮按钮上会默认执行click事件,经验证,click事件与mouse事件的执行顺序为onmousedown =>onmouseup => ...

  8. 在vue中使用vuex 一个简单的实例

    1.安装vuex:npm install vuex --save 2.在main.js文件中引入vuex (请忽略其它代码) 3.建一个vuex文件夹,然后在建一个store.js(这两个文件名字可以 ...

  9. vue中使用element写点击input内部标签(使用模态框传值)

    首先附上源码地址 https://files.cnblogs.com/files/maruihua/vue-tagsinput-master.zip 这个是我修改后的代码.取消了部分功能,添加的一些功 ...

随机推荐

  1. 01-简单编写http服务器

    package com.day3; import java.io.IOException; import java.io.InputStream; import java.net.ServerSock ...

  2. postgresql数据库3种程序(rule,trigger ,FUNCTION )

    1. CREATE [ OR REPLACE ] RULE name AS ON event TO table_name [ WHERE condition ] DO [ ALSO | INSTEAD ...

  3. 利用SharpZipLib进行字符串的压缩和解压缩

    http://www.izhangheng.com/sharpziplib-string-compression-decompression/ 今天搞了一晚上压缩和解压缩问题,java压缩的字符串,用 ...

  4. bresenham 算法生成直线

    struct Point{ Point() { posx = 0; posy = 0; } Point(int x, int y) { posx = x; posy = y; } int posx; ...

  5. Dubbo源码分析

    Dubbo源码分析1 Dubbo源码分析2 dubbo源码阅读:rpc请求处理流程(1) 架构设计:系统间通信(17)——服务治理与Dubbo 中篇(分析) 13. Dubbo原理解析-注册中心之Zo ...

  6. profile default1

    DEVPISAP01:/sapmnt/ISD/profile # more ISD_J20_SHADEVEAIAP01 SAPSYSTEMNAME = ISD SAPSYSTEM = 20 INSTA ...

  7. pandas 存取数据小笔记

    import pandas as pd 1.   读取和保存 csv文件 #读 df = pd.read_csv(read_file_path, header=0) # 其中read_file_pat ...

  8. Error importing tensorflow. Unless you are using bazel version `CXXABI_1.3.8' not found

    I have re-installed Anaconda2. And I got the following error when 'python -c 'import tensorflow'' &g ...

  9. python 爬虫启航2.0

    文章解析: 1.正则表达式解析 2.beautifulsoup,BeautifulSoup是一个复杂的树形结构,她的每一个节点都是一个python对象,获取网页的内容就是一个提取对象内容的过程,它的提 ...

  10. ==、equals和hashCode小结

    1.== ==是关系操作符,对于基本类型(byte,short,char,int,long,float,double,boolean),比较的是值是否相等:对于对象,比较的是对象的引用(也即栈内存中的 ...