位置: IT常识 - 正文

Vue.js笔记------事件(vue.js.)

编辑:rootadmin
Vue.js笔记------事件 一、事件与事件流

推荐整理分享Vue.js笔记------事件(vue.js.),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue.js in action,vue.js如何使用,vue 使用js,vuejs org,vue intro.js,vue.js使用教程,vue.js in action,vue.js使用教程,内容如对您有帮助,希望把文章链接给更多的朋友!

   1、事件与事件流

    【事件】

      JavaScript中的事件,可以理解就是在HTML文档或者浏览器中发生的一种交互操作,使得网页具备互动性。常见的有加载事件、鼠标事件。

    【事件流】

      由于DOM是一个树结构,如果在父子节点绑定事件时候,当触发子节点的时候,就存在一个顺序问题,这就涉及到了事件流。页面触发一个事件时,会按照一定的顺序来响应事件,事件的响应过程为事件流。

    【js的事件流三阶段】

        事件捕捉阶段(capture phrase):事件开始由顶层对象触发,然后逐级向下传播,直到目标元素;

        处于目标阶段(target phrase):处于绑定事件的元素上;

        事件冒泡阶段(bubbling phrase):事件由具体的元素先接收,然后逐级向上传播,直到不具体的元素;(事件捕获是从上到下,而事件冒泡,是从下到上。)

2、事件冒泡与事件捕获

     事件冒泡和事件捕获分别由微软和网景公司提出,是为了解决页面中事件流(事件发生顺序)的问题。

     事件冒泡:

        微软提出了名为事件冒泡(event bubbling)的事件流。

        事件冒泡可以形象的比喻成把一颗石头投入水中,泡泡会一直从水底冒出水面。

        也就是说,事件会从最内层的元素开始发生,一直向上传播,直到document对象。

Vue.js笔记------事件(vue.js.)

        因此在事件冒泡的概念下在button按钮发生click事件的顺序应该是button→div→body→html→document.

        事件捕获:

        网景提出另一种事件流名为事件捕获(event capturing)。

        与事件冒泡相反,事件会从最外层开始发生,直到具体的元素。

        因此在事件捕获的概念下在button按钮发生click事件的顺序应该是document→html→bodv→div→button。

        后来W3C采用折中的方式,平息了网景和微软之间的战争,制定了统一的标准--先捕获在冒泡。

3、事件对象

        用户界面事件:涉及到与BOM交互的通用浏览器事件。

        load事件:在整个页面(包括所有外部资源如图片 JavaScript文件和CSS文件)加载完成后触发。

window.onload = function() { alert("页面加载完成") };

        焦点事件:在元素获得或失去焦点时触发的事件。 

        鼠标事件:使用鼠标在页面上执行某些操作时触发的事件。

        滚轮事件:使用鼠标滚轮时触发的事件。

        输入事件:向文档中输入文本时触发的事件。

        键盘事件:使用键盘在页面上执行某些操作时触发的事件,

        输入法事件:使用某些输入法时触发的事件

二、事件绑定指令

    计算正方形的面积

<body> <div id="app"> <!--方法一:以内联方式响应事件--> <!--<button v-on:click="length++">改变边长</button>--> <!--方法二:绑定方法处理事件--> <button v-on:click="changeLength">改变边长</button>: <p>正方形的边长是{{ length }},面积是{{ area }}</p> </div> <script src="../../vue.js"></script> <script> new Vue({ el:'#app', data:{ length:2 }, computed:{ area(){ return this.length*this.length }, }, methods:{ changeLength(){ this.length++ } } }) </script></body>

三、事件修饰符

  1、事件修饰符使用

<div id="app" @click="divClick"> <ul @click.self="ulClick"> <!-- 事件修饰符 --> <!-- .stop阻止事件冒泡 --> <li @click="liClick">111</li> <li>222</li> <li>333</li> </ul> </div> <script src="../../vue.js"></script> <script> new Vue({ el:'#app', methods:{ divClick(){ console.log('div'); }, ulClick(){ console.log('ul'); }, liClick(evt){ console.log('li'); // JS原生写法:阻止事件冒泡 // evt.stopPropagation() } } }) </script>

 2、事件修饰符详解

<body> <!-- 事件修饰符 event.preventDefault()/阻止状认行为或者event.stopPropogation()/阻止事件冒泡. 以上方法而要处理D0M事件细节,代码繁项. 为了解决这个问题,Vue.js提供了事件修饰符. 修饰符是以点开头的指令后缀来表示的, --> <!-- .stop阳止冒泡事件继续传播 --> <a v-on:click.stop="doThis"></a> <!-- .se1f当事件日标是当前元素自身时,触发事件 --> <ul @click.self="ulClick"></ul> <!-- .capture将原本默认的冒泡方式改为捕捉方式 --> <!-- :prevent阻止事件默认行为 --> <!--@submit.prevent提交事件不再重载顶面--> <form v-on:submit.prevent="onSubmit"></form> <!--.stop.prevent修饰符可以串联,既阻止冒泡又阻止默认行为.--> <a v-on:click.stop.prevent="doThat"></a> <!--只有修饰符--> <form v-on:submit.prevent></form></body>
本文链接地址:https://www.jiuchutong.com/zhishi/297361.html 转载请保留说明!

上一篇:Vue项目中实现ElementUI按需引入(vue在项目中怎么用的)

下一篇:垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(垃圾分类手工小模型)

  • 房产税城镇土地使用税申报期限
  • 报关单完成出口后收汇期限4月30日
  • 2023年增值税税率表
  • 价外费用是含税价还是不含税价
  • 或有资产的确认条件ACCA
  • 注册分公司独立核算和非独立核算的区别
  • 居民转供电收费标准
  • 季度利润表不包括什么
  • 不可修复废品损失会计分录
  • 委托加工的账务处理
  • 出口增值税发票金额怎么开
  • 网上平台服务年费应该计入什么费用?
  • 业务宣传及广告费超比例
  • 所得税季度申报表营业成本怎么填
  • 固定成本与变动成本的区别
  • 企业收到的贷款会计分录
  • 企业账户利息收入怎么算
  • 失去胜诉权但又有起诉权是什么意思
  • 收到外币货款账务处理
  • 王者荣耀百里守约是男是女
  • 什么是租赁公司的主营业务
  • 三证合一后的税务登记证查询方法
  • php数据库分页是怎么实现的
  • 残疾人保障金汇算清缴填在哪里
  • php面向对象编程
  • 什么是董事会费
  • 企业财务会计
  • 投资性房地产出售时其他综合收益
  • 公司亏损注销了怎么处理
  • css经典面试题
  • vue 长列表优化
  • 利息收入属于什么税目
  • 反斜杠python
  • ajax调用php接口
  • 企业产值用什么符号表示
  • 小规模超500万升一般纳税人规定
  • 公司购进软件的账务处理
  • 劳务派遣差额征税的账务处理实例
  • 存放在仓库中的柴油属于什么会计要素
  • wordpress建立数据库失败
  • vue注册用户名和密码
  • 织梦怎么导入数据库
  • 盈利和亏损怎么计算
  • 项目差旅费可以直接入成本吗
  • 计提的坏账准备计入什么科目
  • 追索权定义
  • 代收资金清算过程
  • 为什么购买办公用品
  • 研发支出计入产品成本吗
  • 机械租赁公司需要什么证件
  • 开具红字发票的当月就要进项税额转出吗?
  • 哪几种情况涉及到进项税额的转出
  • 固定资产的入账时间应该是什么时间
  • SQL Server中使用Trigger监控存储过程更改脚本实例
  • MYSQL updatexml()函数报错注入解析
  • sql语句大全实例教程
  • windows任务管理器命令
  • win10预览版绿屏重启解决
  • 启用5g后流量有什么影响
  • centos6.8安装不上
  • 忘记密码 ?
  • hosts文件位置在哪
  • ubuntu10.04 root的帐户启用方法
  • xshell如何使用
  • linux安全性从何而来
  • pavkre.exe - pavkre是什么进程 作用是什么
  • win10一直重置
  • linux-swap
  • jquery tagname
  • js内存泄漏的原因及解决办法
  • document.getElementById()为null
  • centos6.7安装问题
  • 简述javascript
  • 河南省地税网上营业厅
  • 电子税务局无法导出申报表
  • 重庆国税电子税务局
  • 大连地税局发票怎么开
  • 涉嫌虚开增值税专用发票罪
  • 什么是从价计征,从量计征
  • 广西定额发票查询入口官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设