自学阶段四Webapis基础—Day2

111 阅读2分钟

一、为元素绑定事件

语法:元素.addEventListener('事件类型',处理函数 )

事件监听机制来监听用户是否触发了事件,如果有触发就调用传入的函数进行处理

元素可以注册同名事件
元素注册之后,不会立即触发
页面中任何标签元素都可以注册事件
事件既可以通过用户交互来触发,也可以使用代码主动触发

事件三要素

1.事件源: 哪个元素的事件触发了

2.事件(类型,名) : click mouseenter

3.事件处理函数:事件触发了要做啥function(){}

事件类型:
click 点击事件
mouseenter mouseleave 鼠标移入移出事件
mouseover mouseout focus blur 获取和失去焦点事件
keydown keyup键盘摁下弹起事件
input 输入事件
事件类型不能任意添加,系统会根据用户的操作触发对应的类型的事件 change事件 输入的内容和失焦:用于file文件域,当用户选择好文件时触发

注意事项:

注意事项:
表单元素的值通过vaule去获取
常规元素的值通过innerHTML修改/获取
,一般获取双标签中拼接的内容
字符串有length属性
area有maxlength属性,控制用户可以输入多少个字
遇到伪数组:需要循环遍历,不能直接添加注册事件,需要给每个i注册

console.log(textarea.innerText) // 完全拿不到

console.log(textarea.innerHTML) // 只能获取到默认内容

console.log(textarea.value) // 可以获取更新后的内容--正确的姿势

事件版本-拓展(了解)
L0 使用on方式来注册事件
btn.onclick = function(){}
缺点:给同一个元素注册 同一个事件会有覆盖问题

L2 使用addEventListener方式注册事件
使用此方式绑定的事件不会自动触发
存在兼容问题,IE678不识别
可以绑定多个同名事件

二、高阶函数

简单说就是指函数的高级运用,这一阶段主要是指 将函数做为参数传递--回调函数

回调函数:调用函数A,将函数B做为参数传递,函数B就称回调函数

  1. 回调函数是我们开发者准备的
  2. 但是回调函数不是我们自己调用的

环境变量

指的是汉书中的this

那个元素触发了事件,这个元素就是事件处理函数中的this

三、排他思想

先干掉其他人,再复活自己(只找到有指定样式的元素清除样式,再为当前元素添加样式)

优化:干掉需要干掉的人