基于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 相关文章推荐
模仿JQuery sortable效果 代码有错但值得看看
Nov 05 Javascript
Tab页界面 用jQuery及Ajax技术实现(php后台)
Oct 12 Javascript
如何使用jQuery Draggable和Droppable实现拖拽功能
Jul 05 Javascript
js中opener与parent的区别详细解析
Jan 14 Javascript
javascript中sort()的用法实例分析
Jan 30 Javascript
浅析JavaScript中的事件机制
Jun 04 Javascript
js实现仿京东2级菜单效果(带延时功能)
Aug 27 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
May 28 Javascript
基于Vue实现tab栏切换内容不断实时刷新数据功能
Apr 13 Javascript
JS实现简单获取最近7天和最近3天日期的方法
Apr 18 Javascript
生成无限制的微信小程序码的示例代码
Sep 20 Javascript
echarts浮动显示单位的实现方法示例
Dec 04 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/10/09 PHP
php中ob_get_length缓冲与获取缓冲长度实例
2014/11/20 PHP
php通过文件头判断格式的方法
2016/05/28 PHP
JS异常处理的一个想法(sofish)
2013/03/14 Javascript
JS控制表格实现一条光线流动分割行的方法
2015/03/09 Javascript
javascript递归回溯法解八皇后问题
2015/04/22 Javascript
jQuery()方法的第二个参数详解
2015/04/29 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
js仿3366小游戏选字游戏
2016/04/14 Javascript
分享10个优化代码的CSS和JavaScript工具
2016/05/11 Javascript
JS实现简单的右下角弹出提示窗口完整实例
2016/06/21 Javascript
微信小程序 获取二维码实例详解
2017/06/23 Javascript
js + css实现标签内容切换功能(实例讲解)
2017/10/09 Javascript
微信小程序如何获取openid及用户信息
2018/01/26 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
2018/08/24 Javascript
react native 获取地理位置的方法示例
2018/08/28 Javascript
JavaScript文本特效实例小结【3个示例】
2018/12/22 Javascript
jquery操作checkbox的常用方法总结【附测试源码下载】
2019/06/10 jQuery
解决Vue中的生命周期beforeDestory不触发的问题
2020/07/21 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
JavaScript WeakMap使用详解
2021/02/05 Javascript
详解Django的CSRF认证实现
2018/10/09 Python
selenium+python自动化测试环境搭建步骤
2019/06/03 Python
解决python tkinter界面卡死的问题
2019/07/17 Python
Python 解码Base64 得到码流格式文本实例
2020/01/09 Python
国际鲜花速递专家:Floraqueen
2016/11/24 全球购物
凯蒂·佩里个人女鞋品牌:Katy Perry Collections
2019/04/04 全球购物
戴森比利时官方网站:Dyson BE
2020/10/03 全球购物
安全教育心得体会
2013/12/29 职场文书
毕业设计指导教师评语
2014/12/30 职场文书
端午节活动总结报告
2015/02/11 职场文书
公司行政管理制度范本
2015/08/05 职场文书
单位病假条范文
2015/08/17 职场文书
2016年暑期见闻作文
2015/11/25 职场文书
2016年学校综治宣传月活动总结
2016/03/16 职场文书
Axios代理配置及封装响应拦截处理方式
2022/04/07 Vue.js