、学习内容
箭头函数
语法:() => {}
如果参数只有一个的时候,小括号可以省略
没有 arguments 内置对象
this:箭头函数没有自己的this, 它的this就是父级的this指向
语法:
fn()
function fn() {
console.log('函数声明')
}
fn()
如果参数只有一个的时候,小括号可以省略
let f = a => {
console.log('箭头函数的语法')
console.log(a)
}
f('hello')
如果代码块中只有一行返回值,大括号和return都可以省略
let f = a => a
console.log(f('hello'))
classList 属性中有几个方法
add()
remove()
toggle() 切换,有就移除,没有就添加
事件监听addEventListener
参数一:事件名,不需要加on
参数二:回调函数
参数三:布尔值
事件监听addEventListener()
参数一:事件名,不需要加on
参数二:回调函数
事件解绑removeEventListener()
参数一:事件名
参数二:事件程序
事件流:事件在元素节点之间特定的顺序传播,这一过程就是DOM事件流,分为三个阶段
1. 捕获阶段 - 由外到内
顺序: box3 <- box2 <- box1 <- body <- html <- document
2. 目标阶段 - 触发事件的节点
3. 冒泡阶段 - 由内到外
顺序:box3 -> box2 -> box1 -> body -> html -> document
事件冒泡:(不是所有的事件都有冒泡行为)
由内到外的执行过程
box3 -> box2 -> box1 -> body -> html -> document
box1绑定事件
addEventListener()
第三个参数是一个布尔值
true就是捕获阶段 - 一般不会使用
事件委托实现方式
事件委托:把事件绑定到父元素身上
特点:后来追加的子元素依然具有绑定的事件行为
可视区域坐标
clientX
clientY
文档中的坐标
pageX
pageY
显示器的坐标
screenX
screenY
这三个键盘事件如果都存在的话
顺序是 keydown -> keypress -> keyup
keypress 键盘按下(不识别一些功能键,shift、ctrl、↑ 、→之类的)
|