基于vue实现一个神奇的动态按钮效果


Posted in Javascript onMay 15, 2019

今天我们将利用vue的条件指令来完成一个简易的动态变色功能按钮

首先我们还是要对vue进行配置,在上篇随笔中有相关下载教学.

然后我们要在html页面上搭建三个简易的按钮,颜色分别为紫,绿和蓝(颜色随意)其代码如下:

<body>
<div id="app">
 <p>
  <button @click="btn_click('pg1')" :style="{background:'rebeccapurple'}">紫</button>
  <button @click="btn_click('pg2')" :style="{background:'yellowgreen'}">绿</button>
  <button @click="btn_click('pg3')" :style="{background:'cornflowerblue'}">蓝</button>
 </p>
</div>
</body>

这里的@是v-on事件指令,在这里要在三个按钮上设置点击事件

接着我们要进行条件指令的判断,其代码如下:  

<div class="box pg1" v-if="pg == 'pg1'" key="pg1"></div>
  <div class="box pg2" v-else-if="pg == 'pg2'" key="pg2"></div>
  <div class="box pg3" v-else key="pg3"></div>

通过条件来判断点击不同的按钮触发不同的效果

接下来我们将进行挂载点,事件的渲染以及为事件提供实现体操作

<script>
 new Vue({
  el: '#app',
  data: {
   pg: 'pg1'
  },
  methods: {
   btn_click: function (pg_num) {
    this.pg = pg_num
   }
  }
 })
</script>

这里我们设置进入页面后默认显示第一个按钮显示的图片,通过点击来完成事件的转换.

最后就是把图片给设置出来啦

<style>
 .box {
  width: 200px;
  height: 100px;
  background-color: darkgray;
 }
 .pg1 { background-color: rebeccapurple; }
 .pg2 { background-color: yellowgreen; }
 .pg3 { background-color: cornflowerblue; }
</style>

当然也可以选择你喜欢的图片进行放置,这里我们只是放置颜色填充的框

具体的实现效果如下:

基于vue实现一个神奇的动态按钮效果基于vue实现一个神奇的动态按钮效果基于vue实现一个神奇的动态按钮效果 

  通过不同的点击来获得不同的图片!

整体代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <style>
  .box {
   width: 200px;
   height: 100px;
   background-color: darkgray;
  }
  .pg1 { background-color: rebeccapurple; }
  .pg2 { background-color: yellowgreen; }
  .pg3 { background-color: cornflowerblue; }
 </style>
</head>
<body>
<div id="app">
 <p v-if="is_if" key="my_if">v-if的显示与隐藏</p>
 <p v-show="is_show" key="my_show">v-show的显示与隐藏</p>
 <p>
  <button @click="btn_click('pg1')" :style="{background:'rebeccapurple'}">紫</button>
  <button @click="btn_click('pg2')" :style="{background:'yellowgreen'}">绿</button>
  <button @click="btn_click('pg3')" :style="{background:'cornflowerblue'}">蓝</button>
  <div class="box pg1" v-if="pg == 'pg1'" key="pg1"></div>
  <div class="box pg2" v-else-if="pg == 'pg2'" key="pg2"></div>
  <div class="box pg3" v-else key="pg3"></div>
 </p>
</div>
</body>
<script src="js/vue.min.js"></script>
<script>
 new Vue({
  el: '#app',
  data: {
   is_if: false,
   is_show: true,
   pg: 'pg1'
  },
  methods: {
   btn_click: function (pg_num) {
    this.pg = pg_num
   }
  }
 })
</script>
</html>

总结

以上所述是小编给大家介绍的基于vue实现一个神奇的动态变色按钮效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
Oct 14 Javascript
javascript继承之为什么要继承
Nov 10 Javascript
THREE.JS入门教程(6)创建自己的全景图实现步骤
Jan 25 Javascript
原生javascript实现拖动元素示例代码
Sep 01 Javascript
基于jquery实现等比缩放图片
Dec 03 Javascript
JS控制表单提交的方法
Jul 09 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
Apr 19 Javascript
浅析Bootstrap表格的使用
Jun 23 Javascript
详解angular ui-grid之过滤器设置
Jun 07 Javascript
vue2.0 datepicker使用方法
Feb 04 Javascript
AntV F2和vue-cli构建移动端可视化视图过程详解
Oct 08 Javascript
Vue实现input宽度随文字长度自适应操作
Jul 29 Javascript
微信小程序导航栏跟随滑动效果的实现代码
May 14 #Javascript
详解VSCode配置启动Vue项目
May 14 #Javascript
微信小程序下拉菜单效果的实例代码
May 14 #Javascript
jquery+css实现Tab栏切换的代码实例
May 14 #jQuery
jquery实现二级导航下拉菜单效果实例
May 14 #jQuery
js纯前端实现腾讯cos文件上传功能的示例代码
May 14 #Javascript
解决 viewer.js 动态更新图片导致无法预览的问题
May 14 #Javascript
You might like
删除无限级目录与文件代码共享
2006/07/12 PHP
如何用phpmyadmin设置mysql数据库用户的权限
2012/01/09 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
2014/06/23 PHP
laravel 获取某个查询的查询SQL语句方法
2019/10/12 PHP
laravel 使用事件系统统计浏览量的实现
2019/10/16 PHP
List Installed Hot Fixes
2007/06/12 Javascript
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
JavaScript移除数组元素减少长度的方法
2013/09/05 Javascript
javascript与cookie 的问题详解
2013/11/11 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
javascript结合ajax读取txt文件内容
2014/12/05 Javascript
javascript引用类型指针的工作方式
2015/04/13 Javascript
javascript跨域总结之window.name实现的跨域数据传输
2015/11/01 Javascript
Javascript 闭包详解及实例代码
2016/11/30 Javascript
js解决软键盘遮挡输入框的问题分享
2017/12/19 Javascript
微信小程序实现手势滑动卡片效果
2019/08/26 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
Python读取ini文件、操作mysql、发送邮件实例
2015/01/01 Python
简单讲解Python编程中namedtuple类的用法
2016/06/21 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
2018/01/06 Python
Python实现针对给定字符串寻找最长非重复子串的方法
2018/04/21 Python
python实现图书借阅系统
2019/02/20 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
Python GUI编程学习笔记之tkinter控件的介绍及基本使用方法详解
2020/03/30 Python
Selenium自动化测试工具使用方法汇总
2020/06/12 Python
python软件都是免费的吗
2020/06/18 Python
数据库专业英语
2012/11/30 面试题
办公室主任职责范文
2013/11/08 职场文书
教职工代表大会主持词
2014/04/01 职场文书
2016自主招生教师推荐信范文
2015/03/23 职场文书
领导干部失职检讨书
2015/05/05 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
MySQL的InnoDB存储引擎的数据页结构详解
2022/03/03 MySQL