基于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 相关文章推荐
JavaScript设置FieldSet展开与收缩
May 15 Javascript
IE中jquery.form中ajax提交没反应解决方法分享
Sep 11 Javascript
无缝滚动js代码通俗易懂(自写)
Jun 19 Javascript
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
Aug 16 Javascript
仿百度换肤功能的简单实例代码
Jul 11 Javascript
jQuery实现发送验证码并60秒倒计时功能
Nov 25 Javascript
完美解决input[type=number]无法显示非数字字符的问题
Feb 28 Javascript
JS沙箱模式实例分析
Sep 04 Javascript
AngularJS实现注册表单验证功能
Oct 16 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
Jul 13 Javascript
JS document form表单元素操作完整示例
Jan 13 Javascript
webpack+express实现文件精确缓存的示例代码
Jun 11 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
第五节 克隆 [5]
2006/10/09 PHP
利用php下载xls文件(自己动手写的)
2014/04/18 PHP
PHP动态规划解决0-1背包问题实例分析
2015/03/23 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
2017/02/28 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
2017/03/31 PHP
Laravel统计一段时间间隔的数据方法
2019/10/09 PHP
B/S开发中常用javaScript技术与代码
2007/03/09 Javascript
在jQuery中 常用的选择器介绍
2013/04/16 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
JQuery日历插件My97DatePicker日期范围限制
2016/01/20 Javascript
jQuery实现区域打印功能代码详解
2016/06/17 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
Vue2.0结合webuploader实现文件分片上传功能
2018/03/09 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
vue router导航守卫(router.beforeEach())的使用详解
2019/04/19 Javascript
js调用网络摄像头的方法
2020/12/05 Javascript
python获取图片颜色信息的方法
2015/03/18 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
Win系统PyQt5安装和使用教程
2019/12/25 Python
Python实现子类调用父类的初始化实例
2020/03/12 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
python装饰器实现对异常代码出现进行自动监控的实现方法
2020/09/15 Python
CSS3实现类似翻书效果的过渡动画的示例代码
2019/09/06 HTML / CSS
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
Perfume’s Club中文官网:西班牙美妆在线零售品牌
2020/08/24 全球购物
常见的软件开发流程有哪些
2015/11/14 面试题
国外的一些J2EE面试题一
2012/10/13 面试题
教师网络培训感言
2014/03/09 职场文书
建筑工地质量标语
2014/06/12 职场文书
销售团队获奖感言
2014/08/14 职场文书
2014年教师节红领巾广播稿
2014/09/10 职场文书
开场白怎么写
2015/06/01 职场文书
2016年党员干部廉政承诺书
2016/03/24 职场文书
宫崎骏十大动画电影,宫崎骏好看的动画电影排名
2022/03/22 日漫