请解释事件委托(event delegation)。 事件委托是将事件监听器添加到父元素,而不是每个子元素单独设置事件监听器。当触发子元素时,事件会冒泡到父元素,监听器就会触发。这种技术的好处是: 内存占用减少,因为只需要一个父元素的事件处理程序,而不必为每个后代都添加事件处理程序。 无需从已删除的 ...
分类:
Web程序 时间:
2019-02-26 11:52:19
阅读次数:
165
项目背景是:var a = [{id:1,num:"12"},{id:2,num:"13"},{id:3,num:"3"},{id:2,num:"16"},{id:5,num:"14"},{id:1,num:"14"}] 要求输出:a = [{id:1,num:"26"},{id:2,num:"29 ...
分类:
编程语言 时间:
2019-01-08 12:17:59
阅读次数:
221
终于可以填上坑了。 简单回顾一下之前JS篇内容,每一次setTimeout的调用,会在一个对象中添加一个键值对,键为延迟时间,值为一个链表,将所有该时间对应的事件串起来,图如下: 而每一个延迟键值对的触发,则是在链表头生成的时候就已经开始了,如下: 回顾完毕。 与JS篇一样,这一节也要有预备知识,不 ...
分类:
编程语言 时间:
2018-12-07 20:54:38
阅读次数:
194
作用域 // 1. fn() function fn () { console.log(12) } var as = function () { console.log(45) } // 2. var a = 12; function fn () { console.log(a) var a = 4 ...
分类:
Web程序 时间:
2018-12-02 14:25:49
阅读次数:
213
一、BOM 浏览器对象模型 1.window.open(url,ways) url 是打开的网页地址ways 打开的方式 _self 2.window.close() 关闭当前页面 3.window.navigator() .userAgent 浏览器用户信息 <--后期靠他解决浏览器的兼容性 4. ...
分类:
Web程序 时间:
2018-11-29 10:56:39
阅读次数:
195
一、元素的 client offset scroll 三个系列 clientWidth / clientHeight / clientTop / clientLeftoffsetWidth / offsetHeight / offsetLeft / offsetTop / offsetParents ...
分类:
Web程序 时间:
2018-11-29 10:55:16
阅读次数:
202
元素的属性 Div.attributes 是所有标签属性构成的数据集合 Div.classList 是所有class名构成的数组集合 在classList的原型链上看以看到add()和remove() class的方法: div.className()方法 删除所有class名 替换一个或多个名字d ...
分类:
Web程序 时间:
2018-11-13 20:45:35
阅读次数:
179
最近更新有点慢,更新慢的原因最近在看 《css世界》这本书,感觉很不错 《JavaScript高级程序设计》 这本书已经看了很多遍了,主要是复习前端的基础知识,基础知识经常会过一段时间记忆就会慢慢模糊,特别是现在用vue、react、angularjs已经很少用原生js了,对dom的原生api方法已 ...
分类:
Web程序 时间:
2018-11-12 17:42:15
阅读次数:
265
Css篇: 1、CSS实现宽度自适应100%,宽高16:9的比例的矩形。 JS篇: 1、iframe的缺点有哪些? iframe会阻塞主页面的Onload事件; 搜索引擎的检索程序无法解读这种页面,不利于SEO; iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载 ...
分类:
其他好文 时间:
2018-06-08 20:35:52
阅读次数:
146
在ECMAScript中,对象属性值可以用一个或两个方法代替,这两个方法就是getter和setter。由getter与与setter定义的属性叫做‘存取器属性’。当程序查询存取器属性的值时,js调用getter方法(无参数),这个方法返回的值就是属性存取表达的值。当程序设置一个存取器属性的值时,调 ...
分类:
Web程序 时间:
2018-05-12 02:40:55
阅读次数:
553