【WIP】客户端JavaScript 事件处理
创建: 2017/10/15
| 事件句柄的登陆方法 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件句柄 的登陆方法 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 删除事件监听器 | target.removeEventListener(type, listener, useCapture); 1. 登陆时候如果是无名函数,不能删 2. 可以删除自己(整个事件?) element.removeEventListener("click", arguments.callee, false); |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件对象 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 参数 | 事件回调的对象函数的参数, 名字任意。一般为e或event |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 获取 | 可以直接在触发的处理里使用event 或者加上参数e(jquery.event) $('sample').click(function(e) { event.stopPropagation(); event.preventDefault(); console.log(event); console.log(e); } |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件种类 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件对象共有的属性 | p412
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 鼠标事件对象的共通属性 | click, dbclick, mousedown, mouseup, mousemove, mouseout, mouseover
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 键盘事件的共通属性 | keydown, keypress, keyup等
注:
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件的传播 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件的相 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 取消事件 | 阻止事件的传播
阻止事件的传播与其他同级事件
阻止默认动作
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件监听器内的this | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 事件监听器内的this | 表示登陆该事件的元素对象 | ||||||||||||||||||||||||||||||||||||||||||||||||||
| 改变this指定的对象 | 略 p422 // TODO: 补充这里 |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 向事件监听器添加参数的方法 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 用无名函数 | 在无名函数里面传递参数 e.addEventListener("click", function(e) { test(e, 想要传递的参数); }, false); function test(e, 想要传递的参数) {...}; |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 用返回函数的函数 | e.addEventListener("click", test(...), false);
function test(想要传递的参数) { |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 自定义事件 | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 步骤 |
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 和默认事件的区别 | event.isTrusted true: 用户产生 false: 开发端产生 |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 自定义事件的用途 | 一旦派发,监听器立即执行。所以和直接执行监听器函数没区别。 但是这样更加面向对象,不用在意接口 |
||||||||||||||||||||||||||||||||||||||||||||||||||
| 间接的实现非同期处理(Promise) | |||||||||||||||||||||||||||||||||||||||||||||||||||
| 通常的回调 |
回调只是注册在运行堆, 实际运行时刻为可执行时间和实际设定开始时间中最先到来的 // 输出 A C B 要想实现期待的顺序 setTimeout(()=>{
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| Promise |
var promise = new Promise(function(resolve, reject) {...});
● 参数 想要执行的参数
● 运行
|
||||||||||||||||||||||||||||||||||||||||||||||||||
| 做一个画图软件 | |||||||||||||||||||||||||||||||||||||||||||||||||||
【WIP】客户端JavaScript 事件处理的更多相关文章
- 【WIP】客户端JavaScript Web Object
创建: 2017/10/11 更新: 2017/10/14 标题加上[WIP],增加[TODO] 更新: 2018/01/22 更改标题 [客户端JavaScript Web Object, UR ...
- 【JavaScript权威指南(第五版)】笔记之第二部分 客户端JavaScript 第13章~第23章
第十三章 Web浏览器中的javascript ① eg:下面两行代码实际上执行的是相同的功能 var answer = 42; window.answer = 42; ③每个window对象 ...
- JavaScript 客户端JavaScript之事件(DOM API 提供模块之一)
具有交互性的JavaScript程序使用的是事件驱动的程序设计模型. 目前使用的有3种完全不同的不兼容的事件处理模型. 1.原始事件模型 (一种简单的事件处理模式) 一般把它看作0级DOM API ...
- JavaScript 客户端JavaScript之 脚本化文档
客户端JavaScript的存在把静态HTML转变为交互式的Web应用程序,脚本化Web页面的内容正是JavaScript存在的理由. 一个文档对象模型或者说DOM就是一个API,它定义了如何访问 ...
- 客户端JavaScript(window、document、element)
一.window对象是所有客户端JavaScript特性和API的主要接入点,用window来引用它. 属性:location属性(引用Location对象,当前显示在窗口的URL).document ...
- JavaScript的进阶之路(七)客户端JavaScript知识点总结
一.客户端JavaScript主要是BOM DOM的操作和js脚本的兼容性.互用性.可访问性.安全性的应用.以及一些框架的引用. 二.BOM:浏览器对象模型 主要介绍window对象 1.定时器:se ...
- 浅谈个人对客户端JavaScript同步、异步、执行顺序等概念的理解
一.同步和异步的概念. 同步:即按代码的顺序执行任务. 在下列代码中,按照同步概念,则是先打印1后打印2. console.log(1); console.log(2); 异步:即执行一个任务的同时执 ...
- JavaScript 客户端JavaScript之脚本化HTTP(通过XMLHttpRequest)
XMLHttpRequest对象的设计目的是为了处理由普通文本或XML组成的响应:但是,一个响应也可能是另外一种类型,如果用户代理(UA)支持这种内容类型的话. 大多数浏览的客户端JavaScri ...
- JavaScript 客户端JavaScript之 Web浏览器的环境
Web浏览器实现的Javascript,通过Web浏览器实现的JavaScript引入了大量可脚本化的对象(1.Web浏览器 2.HTML 3.HTML中的内容) Web浏览器中的Javascrip ...
随机推荐
- python第九篇:Python进程
Python进程 接下来我主要按照下图中思维导图上的关键点对进程和线程进行一个总结 进程知识点总结: 一.Python进程 1.概念 程序和进程: 程序:是可执行文件,是静态的,占据磁盘空间,程序 ...
- 聊聊js跨域
推荐先读一下这篇文章: https://segmentfault.com/a/1190000012469713http://www.dailichun.com/2017/03/22/ajaxCross ...
- java:eclipse安装tomcat插件及配置tomcat
我们都知道myeclipse自带tomat图标,而eclipse却没有,若想eclipse实现带有tomcat图标可以下载tomcat插件 tomcat插件下载地址:http://www.eclips ...
- DbHelperSQL 事务写法!
try { DBUtility.CommandInfo dbcom = new DBUtility.CommandInfo(); List<DBUtility.CommandInfo> s ...
- 目标检测 — Inception-ResNet-v2
这篇文章介绍的网络有Inception V1.Inception V2.Inception V3.Inception V4与Inception-ResNet-V2. 1.Inception V1 主要 ...
- runtime error 的原因
1. 数组访问越界 2. 分母为 0 3. 括号 做题时偶然发现的! (详见 UVA 10158 War) 代码中出现了这种东西 else if( arefriends(x,y==-1) ) ...
- Unity3D中Mathf数学运算函数总结
引入: 看到一个案例注意到函数Mathf.SmoothDamp的使用,游戏中用于做相机的缓冲跟踪和boss直升机跟踪士兵.该函数是Unity3D中Mathf数学运算函数中的一个.一些游戏使用了smoo ...
- 关于IDT报错乱码总结
可算是把我折腾坏了.一筹莫展.最后才把这些问题搞好.有些事不知道做以前,怎么都想不到.发现了方法之后,原来也不过这样.我觉得自己记性太差.还是好好写下来吧.写下来顺便会帮我重新再梳理一遍.原先乱码是因 ...
- javaScript-基础篇(二)
1.DOM概念 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树) 将HTML代码 ...
- 【python2/3坑】从gensim的Word2Vec.load()的中文vector模型输出时显示unicode码
服务器上python2.7 打印出的e[0]对应的是 unicode码 于是分别尝试了用e[0].encode('utf-8')转码 和 e[0].decode('unicode-escape')依然 ...