vue-动态高亮效果

个人练习,仅供参考

实现如下效果:点击某块,某块变成其他颜色。

具体实现代码:

上边:

html 复制代码
<template>
  <div>
    <h3 style="color: #f69">动态高亮效果</h3>
    <hr>
<!-- 对象 -->
    <div class="navarr">
      <div
        v-bind:class="{ active: current == n }"
        v-for="n in navarr"
        :key="n"
        @click="current = n"
      >
        {{ n }}
      </div>
    </div>
<!-- 数组 -->
    <div class="navarr1">
      <div
        v-bind:class="[current1==n1?'active':'']"
        v-for="n1 in navarr1"
        :key="n1"
        @click="current1 = n1"
      >
        {{ n1 }}
      </div>
    </div>
    <br>
    <hr>
  </div>
</template>
<script>
export default {
  data() {
    return {
      navarr: ["首页", "推荐", "分类", "我的"],
      current: "首页",
      navarr1: ["首页", "推荐", "分类", "我的"],
      current1: "首页",
    };
  },
  methods: {},
  created: {},
};
</script>
<style scoped>
.navarr ,.navarr1{
  display: flex;
  justify-content: space-around;
  margin-top: 8px;
}
.active {
  color: #f69;
}
</style>

下边:

html 复制代码
<template>
  <div id="app">
    <router-view />
    <footer class="footer">
      <router-link to="/">
        <img src="/favicon.ico" alt="" />
        <p :class="{ active: current == '/' }" @click="current = '/'">首页</p>
      </router-link>
      <router-link to="/sell">
        <img src="/favicon.ico" alt="" />
       <p :class="{ active: current == '/sell' }" @click="current = '/sell'"> v-if&v-model</p>
      </router-link>
      <router-link to="/key">
        <img src="/favicon.ico" alt="" />
        <p :class="{ active: current == '/key' }" @click="current = '/key'">Key</p>
      </router-link>
      <router-link to="/watch">
        <img src="/favicon.ico" alt="" />
        <p :class="{ active: current == '/watch' }" @click="current = '/watch'">Watch</p>
      </router-link>

      <router-link to="/cart">
        <img src="/favicon.ico" alt="" />
        <p :class="{ active: current == '/cart' }" @click="current = '/cart'">购物车</p>
      </router-link>
      <router-link to="/mine">
        <img src="/favicon.ico" alt="" />
        <p :class="{active:current=='/mine'}" @click="current='/mine'">我的</p>
      </router-link>
    </footer>
  </div>
</template>
<script>
export default {
  data() {
    return {
      current: "/",
    };
  },
  methods: {},
  created: {},
};
</script>
<style scoped>
.footer {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  background: rgb(243, 207, 207);
}
.footer a {
  color: gray;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.footer a img {
  width: 20px;
  height: 20px;
}
.active {
  color: #f69;
}
</style>
相关推荐
浩~~8 分钟前
HTML5 浮动(Float)详解
前端·html·html5
AI大模型顾潇1 小时前
[特殊字符] 本地大模型编程实战(29):用大语言模型LLM查询图数据库NEO4J(2)
前端·数据库·人工智能·语言模型·自然语言处理·prompt·neo4j
工业互联网专业1 小时前
基于springboot+vue的医院门诊管理系统
java·vue.js·spring boot·毕业设计·源码·课程设计·医院门诊管理系统
九月TTS1 小时前
TTS-Web-Vue系列:Vue3实现内嵌iframe文档显示功能
前端·javascript·vue.js
爱编程的小学究1 小时前
【node】如何把包发布到npm上
前端·npm·node.js
我爱加班、、2 小时前
Chrome安装最新vue-devtool插件
javascript·vue.js·chrome·vue-devtool
weixin_473894772 小时前
前端服务器部署分类总结
前端·网络·性能优化
LuckyLay2 小时前
React百日学习计划-Grok3
前端·学习·react.js
澄江静如练_2 小时前
小程序 存存上下滑动的页面
前端·javascript·vue.js
源码方舟2 小时前
基于SpringBoot+Vue的房屋租赁管理系统源码包(完整版)开发实战
vue.js·spring boot·后端