详解Vue方法与事件


Posted in Javascript onMarch 09, 2017

一 vue方法实现

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Vue方法与事件</title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
  </head>
  <body>
    <div id="test">
      <button @click="sayHi">点击我</button> <!--这里使用@-->
    </div>
    <script type="text/javascript">
      var myVue = new Vue({
        el: '#test',
        methods: {   //这里使用methods
          sayHi: function () {
            alert('我被点击了')
          }
        }
      })
    </script>
  </body>
</html>

二 方法传参

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Vue方法与事件</title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
  </head>
  <body>
    <div id="test">
      <button @click="sayHi('你好')">说你好</button> <!--这里使用@-->
      <button @click="sayHi('我被点击了')">说我被点击了</button> <!--这里使用@-->
    </div>
    <script type="text/javascript">
      var myVue = new Vue({
        el: '#test',
        methods: {   //这里使用methods
          sayHi: function (message) {
            alert(message)
          }
        }
      })
    </script>
  </body>
</html>

三 vue访问原生 DOM 事件

注意用$event获取

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Vue方法与事件</title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
  </head>
  <body>
    <div id="test">
      <button @click="changeColor('你好',$event)">点击我</button> <!--这里使用@-->
      <div style="height: 100px;width: 100px;background-color: red;" @mouseover="over('鼠标从我上面滑过',$event)">
        鼠标从我上面滑过试试
      </div>
    </div>
    <script type="text/javascript">
      var myVue = new Vue({
        el: '#test',
        methods: {   //这里使用methods
          changeColor: function (message, event) {
            alert(message+event);  //弹出我被点击了,事件是[object MouseEvent]
          },
          over :function (message, event) {
            alert(message+event);  //弹出鼠标从我上面滑过,事件是[object MouseEvent]
          }
        }
      })
    </script>
  </body>
</html>

四 事件修饰符

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Vue方法与事件</title>
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <script src="../js/vue.js" type="text/javascript" charset="utf-8"></script>
  </head>
  <body>
    <div id="test">
      <button @click.stop="sayHi('你好')">说你好</button> <!-- 阻止单击事件冒泡 -->
      <button @click.prevent="sayHi('你好')">说你好</button> <!-- 提交事件不再重载页面 -->
      <button @click.stop.prevent="sayHi('你好')">说你好</button> <!-- 阻止单击事件冒泡和提交事件不再重载页面 -->
      <button @click.capture="sayHi('你好')">说你好</button> <!-- 添加事件侦听器时使用 capture 模式 -->
      <button @click.self="sayHi('你好')">说你好</button>  <!-- 只当事件在该元素本身(而不是子元素)触发时触发回调 -->
      
      <div @keyup.13="sayHi('你好')">说你好</div> <!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
    </div>
    <script type="text/javascript">
      var myVue = new Vue({
        el: '#test',
        methods: {   //这里使用methods
          sayHi: function (message) {
            alert(message)
          }
        }
      })
    </script>
  </body>
</html>

本文下载:vue-click_3water.rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
May 10 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 Javascript
js实现文本框宽度自适应文本宽度的方法
Aug 13 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
Oct 25 Javascript
web 前端常用组件之Layer弹出层组件
Sep 22 Javascript
使用json-server简单完成CRUD模拟后台数据的方法
Jul 12 Javascript
jQuery实现的网站banner图片无缝轮播效果完整实例
Jan 28 jQuery
原生JavaScript实现的无缝滚动功能详解
Jan 17 Javascript
vue更改数组中的值实例代码详解
Feb 07 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
May 18 Javascript
Vue.js中使用Vuex实现组件数据共享案例
Jul 31 Javascript
vue 实现锚点功能操作
Aug 10 Javascript
Vue实现自带的过滤器实例
Mar 09 #Javascript
Vue中fragment.js使用方法详解
Mar 09 #Javascript
JavaScript编写一个贪吃蛇游戏
Mar 09 #Javascript
canvas压缩图片转换成base64格式输出文件流
Mar 09 #Javascript
Bootstrap笔记之缩略图、警告框实例详解
Mar 09 #Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
Mar 09 #Javascript
bootstrap实现的自适应页面简单应用示例
Mar 09 #Javascript
You might like
php一句话cmdshell新型 (非一句话木马)
2009/04/18 PHP
php自动给文章加关键词链接的函数代码
2012/11/29 PHP
Javascript 多物体运动的实现
2014/12/24 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
json与jsonp知识小结(推荐)
2016/08/16 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
Bootstrap在线电子商务网站实战项目5
2016/10/14 Javascript
javascript常用的设计模式
2017/02/09 Javascript
JavaScript 中调用 Kotlin 方法实例详解
2017/06/09 Javascript
3种vue组件的书写形式
2017/11/29 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
微信小程序实现点击图片旋转180度并且弹出下拉列表
2018/11/27 Javascript
js实现ATM机存取款功能
2020/10/27 Javascript
详解小程序之简单登录注册表单验证
2019/05/13 Javascript
vue elementUI table 自定义表头和行合并的实例代码
2019/05/22 Javascript
layui 动态设置checbox 选中状态的例子
2019/09/02 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
vue组件创建的三种方式小结
2020/02/03 Javascript
vue实现简易计算器功能
2021/01/20 Vue.js
[49:05]OG vs Newbee 2019DOTA2国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
使用Python 统计高频字数的方法
2019/01/31 Python
浅谈Python线程的同步互斥与死锁
2020/03/22 Python
Python 实现二叉查找树的示例代码
2020/12/21 Python
芬兰攀岩、山地运动和户外活动用品购物网站:Bergfreunde
2016/10/06 全球购物
主管职责范文
2013/11/09 职场文书
毕业生自荐书
2013/12/18 职场文书
经销商培训邀请函
2014/01/21 职场文书
迟到检讨书大全
2014/01/25 职场文书
企业年会主持词
2014/03/27 职场文书
2014年反洗钱工作总结
2014/11/22 职场文书
爱的承诺书
2015/01/20 职场文书
2015年房地产个人工作总结
2015/05/26 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
python迷宫问题深度优先遍历实例
2021/06/20 Python
电频谱管理的原则是什么
2022/02/18 无线电
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js