基于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 相关文章推荐
js 调整select 位置的函数
Feb 21 Javascript
javascript 面向对象 function类
May 13 Javascript
JavaScript Memoization 让函数也有记忆功能
Oct 27 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
Jan 15 Javascript
通过javascript把图片转化为字符画
Oct 24 Javascript
jQuery聚合函数实例
May 21 Javascript
原生JS实现图片轮播与淡入效果的简单实例
Aug 21 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
React进阶学习之组件的解耦之道
Aug 07 Javascript
vue-cli项目修改文件热重载失效的解决方法
Sep 19 Javascript
JS实现点击li标签弹出对应的索引功能【案例】
Feb 18 Javascript
如何实现一个简易版的vuex持久化工具
Sep 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
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
php出现内存位置访问无效错误问题解决方法
2014/08/16 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
2016/04/14 PHP
学习ExtJS border布局
2009/10/08 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
JS将制定内容复制到剪切板示例代码
2014/02/11 Javascript
JS数组的遍历方式for循环与for...in
2014/07/31 Javascript
Jquery对select的增、删、改、查操作
2015/02/06 Javascript
jQuery选择器源码解读(六):Sizzle选择器匹配逻辑分析
2015/03/31 Javascript
iframe中子父类窗口调用JS的方法及注意事项
2015/08/25 Javascript
seajs学习教程之基础篇
2016/10/20 Javascript
VUE页面中加载外部HTML的示例代码
2017/09/20 Javascript
create-react-app修改为多页面支持的方法
2018/05/17 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
原生js实现trigger方法示例代码
2019/05/22 Javascript
如何在selenium中使用js实现定位
2020/08/18 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
VUE-ElementUI 自定义Loading图操作
2020/11/11 Javascript
Python中字典和JSON互转操作实例
2015/01/19 Python
Python实现购物程序思路及代码
2017/07/24 Python
python mqtt 客户端的实现代码实例
2019/09/25 Python
PyCharm2019安装教程及其使用(图文教程)
2019/09/29 Python
dpn网络的pytorch实现方式
2020/01/14 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
如何解决pycharm调试报错的问题
2020/08/06 Python
CSS3的 fit-content实现水平居中
2017/09/07 HTML / CSS
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
SmartBuyGlasses荷兰:购买太阳镜和眼镜
2020/03/16 全球购物
金智子午JAVA面试题
2015/09/04 面试题
售后求职信范文
2014/03/15 职场文书
企业厂务公开实施方案
2014/03/26 职场文书
中班上学期幼儿评语
2014/04/30 职场文书
小学校长先进事迹材料
2014/05/13 职场文书
2015元旦晚会主持词(开场白+结束语)
2014/12/14 职场文书
工作态度不好检讨书
2015/05/06 职场文书