2021-03-01

js

1. 事件委托
事件委托指的是,不在事件的发生地(直接 dom)上设置监听函数,而是 在其父元素上设置监听函数,通过事件冒泡,父元素可以监听到子元素上事件的 触发,通过判断事件发生元素 DOM 的类型,来做出不同的响应。 举例:最经典的就是 ul 和 li 标签的事件监听,比如我们在添加事件时候,采用 事件委托机制,不会在 li 标签上直接添加,而是在 ul 父元素上添加。
2. 事件流
事件流描述的是从页面中接收事件的顺序,DOM2 级事件流包括下 面几个阶段。

  • 事件捕获阶段
  • 处于目标阶段
  • 事件冒泡阶段

3. 改变函数内部 this 指针的指向函数(bind,apply,call 的区别)
apply和call函数都会改变自身方法参数一的对象的this指向,并立即执行。
区别在于apply的第二个参数为数组,call的第二个参数为arg1,arg2....这种形式。
通过 bind 改变 this 作用域会返回一个新的函数,这个 函数不会马上执行,需要手动调用。

4.异步加载 js 的方法

  1. <async>属性是HTML5中新增的异步支持。此方法被称为Script DOM Element 方法。并且如果在 IE 中,同时存在 defer 和 async,那么 defer 的优先级比较高,脚本将在页面完成时执行。
  2. defer 属性规定当页面已完成加载后,才会执行脚本。
  3. 创建 script 标签,插入到 DOM 中
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容