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 相关文章推荐
Jquery 高亮显示文本中重要的关键字
Dec 24 Javascript
javascript中Date对象的getDay方法使用指南
Dec 22 Javascript
EasyUi datagrid 实现表格分页
Feb 10 Javascript
基于Marquee.js插件实现的跑马灯效果示例
Jan 25 Javascript
jquery实现一个全局计时器(商城可用)
Jun 30 jQuery
node vue项目开发之前后端分离实战记录
Dec 13 Javascript
js canvas实现5张图片合成一张图片
Jul 15 Javascript
layui监听单元格编辑前后交互的例子
Sep 16 Javascript
JS桶排序的简单理解与实现方法示例
Nov 25 Javascript
js prototype深入理解及应用实例分析
Nov 25 Javascript
Vue 使用iframe引用html页面实现vue和html页面方法的调用操作
Nov 16 Javascript
Nest.js 授权验证的方法示例
Feb 22 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
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
2010/02/08 PHP
php ZipArchive压缩函数详解实例
2013/11/06 PHP
ucenter中词语过滤原理分析
2016/07/13 PHP
CI框架实现框架前后端分离的方法详解
2016/12/30 PHP
PHP 文件上传后端处理实用技巧方法
2017/01/06 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
PHP实现批量删除(封装)
2017/04/28 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
PHP封装的完整分页类示例
2018/08/21 PHP
php封装的page分页类完整实例代码
2020/02/01 PHP
PHP安全之register_globals的on和off的区别
2020/07/23 PHP
Chosen 基于jquery的选择框插件使用方法
2012/05/30 Javascript
location.href用法总结(最主要的)
2013/12/27 Javascript
代码获取历史上的今天发生的事
2014/04/11 Javascript
node.js中的fs.readFile方法使用说明
2014/12/15 Javascript
NodeJS Web应用监听sock文件实例
2015/02/18 NodeJs
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
2015/02/26 Javascript
简单掌握JavaScript中const声明常量与变量的用法
2016/05/21 Javascript
DropDownList实现可输入可选择(两种版本可选)
2016/12/07 Javascript
vue进行图片的预加载watch用法实例讲解
2018/02/07 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
2020/08/13 Javascript
python直接访问私有属性的简单方法
2016/07/25 Python
Pycharm无法使用已经安装Selenium的解决方法
2018/10/13 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
5分钟让你掌握css3阴影、倒影、渐变小技巧(小编推荐)
2016/08/15 HTML / CSS
详解HTML5中的拖放事件(Drag 和 drop)
2016/11/14 HTML / CSS
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
英国美术用品购物网站:Cass Art
2019/10/08 全球购物
Edwaybuy西班牙:小米在线商店
2019/12/04 全球购物
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
师范生自荐信
2013/10/27 职场文书
预备党员入党感言
2015/08/01 职场文书
学校运动会感想
2015/08/10 职场文书
歌咏比赛口号大全
2015/12/25 职场文书
方法汇总:Python 安装第三方库常用
2022/04/26 Python