vue实现按钮切换图片


Posted in Vue.js onJanuary 20, 2021

本文实例为大家分享了vue实现按钮切换图片的具体代码,供大家参考,具体内容如下

Tab选项卡

vue实现按钮切换图片

实现步骤

1、实现静态UI效果

用传统的方式实现标签结构和样式

2、基于数据重构UI效果

将静态的结构和样式重构为基于Vue模板语法的形式
处理事件绑定和js控制逻辑

vue实现按钮切换图片

设置基本样式

{
 overflow: hidden;
 padding: 0;
 margin: 0;
 }

 .tab ul li {
 box-sizing: border-box;
 padding: 0;
 float: left;
 width: 100px;
 height: 45px;
 line-height: 45px;
 list-style: none;
 text-align: center;
 border-top: 1px solid #ccc;
 border-right: 1px solid #ccc;
 cursor: pointer;
 }

 .tab ul li.active {
 background-color: orange;
 }

 .tab ul li:first-child {
 border-left: 1px solid blue;
 }

 .tab div {
 width: 500px;
 height: 300px;
 display: none;
 text-align: center;
 font-size: 30px;
 line-height: 300px;
 border: 1px solid blue;
 border-top: 0px;
 }

 .tab div.current {
 display: block;
}

实现静态布局

<div id="app">
 <button v-on:click="handla">向前切换</button>
 <button v-on:click="handlc">单向循环切换</button>
 <button v-on:click="handle">向后切换</button>

 <div class="tab">
 <ul>
 <li :class="currentIndex==index?'active':''" :key="item.id" v-for="(item,index) in list">{{item.title}}
 </li>
 </ul>
 <div :class="currentIndex==index?'current':''" :key="item.id" v-for="(item,index) in list">
 <img :src="item.path">
 </div>
 </div>

</div>

实现具体功能

<script type="text/javascript" src="../js/vue.js"></script>
 <script type="text/javascript">
 /* */
 var vm = new Vue({
 el: '#app',
 data: {
 currentIndex: 0,
 list: [{
  id: 1,
  title: 'apple',
  path: 'img/apple.png'
 }, {
  id: 2,
  title: 'orange',
  path: 'img/orange.png'
 }, {
  id: 3,
  title: 'lemon',
  path: 'img/lemon.png'
 }]
 },
 methods: {
 handle: function () {
  if (this.currentIndex < 2) {
  this.currentIndex = this.currentIndex + 1
  }
 },

 handla: function () {
  if (this.currentIndex > 0) {
  this.currentIndex = this.currentIndex - 1
  }

 },
 handlc: function () {
  this.currentIndex = this.currentIndex + 1
  if (this.currentIndex > 2) {
  this.currentIndex = 0
  }

 },

 }
 })
</script>

最终效果

vue实现按钮切换图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Vue.js 相关文章推荐
Vue用mixin合并重复代码的实现
Nov 27 Vue.js
ESLint 是如何检查 .vue 文件的
Nov 30 Vue.js
Vue仿百度搜索功能
Dec 28 Vue.js
手写Vue源码之数据劫持示例详解
Jan 04 Vue.js
vue-resource 拦截器interceptors使用详解
Jan 18 Vue.js
解决vue项目本地启动时无法携带cookie的问题
Feb 06 Vue.js
Vue实现todo应用的示例
Feb 20 Vue.js
详解Vue3.0 + TypeScript + Vite初体验
Feb 22 Vue.js
Vue-router编程式导航的两种实现代码
Mar 04 Vue.js
vue使用节流函数的踩坑实例指南
May 20 Vue.js
vue-cli3.0修改打包后的文件名和文件地址,打包后本地运行报错解决
Apr 06 Vue.js
vue3种table表格选项个数的控制方法
Apr 14 Vue.js
Vue实现图书管理案例
Jan 20 #Vue.js
详解vue之自行实现派发与广播(dispatch与broadcast)
Jan 19 #Vue.js
vue二选一tab栏切换新做法实现
Jan 19 #Vue.js
vue-resource 拦截器interceptors使用详解
Jan 18 #Vue.js
vue element el-transfer增加拖拽功能
Jan 15 #Vue.js
Vue实现多页签组件
Jan 14 #Vue.js
如何在vue中使用HTML 5 拖放API
Jan 14 #Vue.js
You might like
php 字符过滤类,用于过滤各类用户输入的数据
2009/05/27 PHP
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
PHP一致性hash分布式算法封装类定义与用法示例
2018/08/04 PHP
tagName的使用,留一笔
2006/06/26 Javascript
js为空或不是对象问题的快速解决方法
2013/12/11 Javascript
javascript日期格式化示例分享
2014/03/05 Javascript
JQuery实现table行折叠效果以JSON做数据源
2014/05/26 Javascript
禁止iframe脚本弹出的窗口覆盖了父窗口的方法
2014/09/06 Javascript
AngularJS入门教程(二):AngularJS模板
2014/12/06 Javascript
微信小程序 天气预报开发实例代码源码
2017/01/20 Javascript
js实现类bootstrap模态框动画
2017/02/07 Javascript
使用grunt合并压缩js和css文件的方法
2017/03/02 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
2017/04/25 Javascript
ES6学习之变量的两种命名方法示例
2017/07/18 Javascript
JavaScript获取用户所在城市及地理位置
2018/04/21 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
微信小程序实现页面下拉刷新和上拉加载功能详解
2018/12/03 Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
在weex中愉快的使用scss的方法步骤
2020/01/02 Javascript
javascript实现简单页面倒计时
2021/03/02 Javascript
python压缩文件夹内所有文件为zip文件的方法
2015/06/20 Python
详解python的ORM中Pony用法
2018/02/09 Python
以SQLite和PySqlite为例来学习Python DB API
2020/02/05 Python
python解析xml文件方式(解析、更新、写入)
2020/03/05 Python
Python如何对XML 解析
2020/06/28 Python
Django URL参数Template反向解析
2020/11/24 Python
太阳镜仓库,售价20美元或更少:Sunglass Warehouse
2016/09/28 全球购物
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
家乐福台湾线上购物网:Carrefour台湾
2020/09/15 全球购物
党员自我批评与反省材料
2014/02/10 职场文书
业务员的岗位职责
2014/03/15 职场文书
领导班子对照检查材料
2014/09/22 职场文书
军人离婚协议书样本
2014/10/21 职场文书