Vue.js实现按钮的动态绑定效果及实现代码


Posted in Javascript onAugust 21, 2017

实现效果:

Vue.js实现按钮的动态绑定效果及实现代码

实现代码以及注释:

<!DOCTYPE html>
<html>
<head>
  <title>按钮绑定</title>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style type="text/css">
    *{
      margin: 0;
      padding: 0;
    }
    body{
      font: 15px/1.3 'Open Sans', sans-serif;
      color: #5e5b64;
      text-align: center;
    }
    a, a:visited{
      outline: none;
      color: #3b9dc1;
    }
    a:hover{
      text-decoration: none;
    }
    section, footer, header, aside, nav{
      display: block;
    }
    /* 菜单栏 */
    nav{
      display: inline-block;
      margin: 60px auto 45px;
      background-color: #5597b4;
      box-shadow: 0 1px 1px #ccc;
      border-radius: 2px;
    }
    nav a{
      display: inline-block;
      padding: 18px 30px;
      color: #fff !important;
      font-weight: bold;
      font-size: 16px;
      text-decoration: none !important;
      line-height: 1;
      text-transform: uppercase;
      background-color: transparent;
      -webkit-transition:background-color 0.25s;
      z-index: moz-transition:background-color 0.25s;
      transition:background-color 0.25s;
    }
    nav a:first-child{
      border-radius:2px 0 0 2px;
    }
    nav a:last-child{
      border-radius:0 2px 2px 0;
    }
    nav.home .home,
    nav.projects .projects,
    nav.services .services,
    nav.contact .contact{
      background-color:#e35885;
    }
    p{
      font-size:22px;
      font-weight:bold;
      color:#7d9098;
    }
    p b{
      color:#ffffff;
      display:inline-block;
      padding:5px 10px;
      background-color:#c4d7e0;
      border-radius:2px;
      text-transform:uppercase;
      font-size:18px;
    }
  </style>
</head>
<body>
<div id="main">
  <!--导航栏菜单会得到处于active的变量的值作为一个class -->
  <!-- 为了防止当我们点击链接时页面发生跳转,我们使用prevent优化 -->
  <nav v-bind:class="active" v-on:click.prevent>
    <!-- 当一个菜单中的链接被点击,我们调用定义在javaScript vue中的makeActive方法 -->
    <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="home" v-on:click="makeActive('home')">Home</a>
    <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="projects" v-on:click="makeActive('projects')">Projects</a>
    <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="services" v-on:click="makeActive('services')">Services</a>
    <a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="contact" v-on:click="makeActive('contact')">Contact</a>
  </nav>
  <!-- mustache表达式将被active的值替换,它将发生任何变化它都将会自动更新-->
  <p>YOU SELECTED <b>{{active}}</b></p>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.0.5/vue.min.js"></script>
<script type="text/javascript">
  // 创建一个Vue示例,并且传递一个可选对象
  var demo = new Vue({
    // 一个DOM元素表示我们的view模型
    el: '#main',
    // 定义属性值,给定初始化值
    data: {
      active: 'home'
    },
    // 我们需要使用到的函数
    methods: {
      makeActive: function(item){
        // 当一个model发生变化,view会自动更新
        this.active = item;
      }
    }
  });
</script>
</body>
</html>
Javascript 相关文章推荐
为指定元素增加样式的js代码
Dec 09 Javascript
基于javascript 闭包基础分享
Jul 10 Javascript
jquery(hide方法)隐藏指定元素实例
Nov 11 Javascript
Js实现手机发送验证码时按钮延迟操作
Jun 20 Javascript
jQuery添加/改变/移除CSS类及判断是否已经存在CSS
Aug 20 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
Apr 01 Javascript
原生js和jQuery实现淡入淡出轮播效果
Dec 25 Javascript
基于JS代码实现图片在页面中旋转效果
Jun 16 Javascript
angular学习之从零搭建一个angular4.0项目
Jul 10 Javascript
vue+swiper实现组件化开发的实例代码
Oct 26 Javascript
Vuex 使用及简单实例(计数器)
Aug 29 Javascript
前端性能优化建议
Sep 17 Javascript
Node.js简单入门前传
Aug 21 #Javascript
详解基于webpack2.x的vue2.x的多页面站点
Aug 21 #Javascript
Vue中的ref作用详解(实现DOM的联动操作)
Aug 21 #Javascript
jquery动态赋值id与动态取id方法示例
Aug 21 #jQuery
详解webpack的配置文件entry与output
Aug 21 #Javascript
jQuery模拟爆炸倒计时功能实例代码
Aug 21 #jQuery
原生JS 购物车及购物页面的cookie使用方法
Aug 21 #Javascript
You might like
特转载一高手总结PHP学习资源和链接.
2006/12/05 PHP
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
163的邮件用phpmailer发送(实例详解)
2013/06/24 PHP
php防止站外远程提交表单的方法
2014/10/20 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
2018/12/08 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
DB.ASP 用Javascript写ASP很灵活很好用很easy
2011/07/31 Javascript
完美兼容各大浏览器获取HTTP_REFERER方法总结
2014/06/24 Javascript
浅谈javascript属性onresize
2015/04/20 Javascript
浏览器兼容性问题大汇总
2015/12/17 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
js获取对象、数组的实际长度,元素实际个数的实现代码
2016/06/08 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
node.js中的事件处理机制详解
2016/11/26 Javascript
Vue.js实现文章评论和回复评论功能
2020/05/30 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
webpack优化的深入理解
2018/12/10 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
python 类详解及简单实例
2017/03/24 Python
详解Python多线程Selenium跨浏览器测试
2017/04/01 Python
Python中super函数的用法
2017/11/17 Python
Python3.4 tkinter,PIL图片转换
2018/06/21 Python
python实现单链表中删除倒数第K个节点的方法
2018/09/28 Python
python调用并链接MATLAB脚本详解
2019/07/05 Python
一行Python代码过滤标点符号等特殊字符
2019/08/12 Python
世界上最全面的汽车零部件和配件集合:JC Whitney
2016/09/04 全球购物
涉外文秘个人求职的自我评价
2013/10/07 职场文书
大学生职业生涯规划书范文
2014/01/04 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
四查四看整改措施
2014/09/19 职场文书
餐馆开业致辞
2015/08/01 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
MySQL修炼之联结与集合浅析
2021/10/05 MySQL