知识总结-API-01

230 阅读3分钟

一、常见错误:

1.span is not defined span没有定义,一般是因为span这个变量你真的没有定义,或者在没有添加引号

  1. Cannot read properties of null (reading 'style') 不能使用null读取属性style 一般就是因为元素获取不成功,返回了nullnull
  2. Cannot set properties of undefined (setting 'color'):i不能使用undefined设置属性color (空数组不能直接来设置属性,先遍历在设置) *(1).访问一个未定义的对象: *** is not defined (2).访问一个对象不存在的属性,返回undefined
    list.style 空对象 list.style.color错了
  3. ERR_FILE_NOT_FOUND:路径错误
  4. Identifier 'button' has already been declared 标识 button 已 经 被 声明 let声明变量的时候,不允许重名

二、如何获取元素

1.querySelector():

获取满足条件的第一个元素,获取到的元素是dom元素,意味着可以直接操作

2.querySelectorAll():

获取满足条件的所有元素,获取到的是伪数组,伪数组不能直接操作,需要遍历伪数组,获取里面的每一个值进行操作

3.参数:传入选择器

三、设置标签之间的文本内容

1.innerText:

设置标签的文本内容,不会解析标签,如果没有赋值就是取值,取值会忽略标签

2.innerHTML:

设置标签的文本内容,会解析标签,如果没有赋值就是取值,取值会返回标签内容的完整的html结构

四、设置元素的属性

1.dom元素.内置属性:如果没有赋值就是取值

2.操作样式

(1)style:样式属性对象。

它是一个对象,包含着当前元素所有可设置的样式属性,使用时通过 dom元素.style.样式 = 值。它的作用是设置行内样式

(2)设置元素的类名:
1. className:

​ 可以设置元素的类名,它会覆盖元素之前的类名样式

2.操作classList:当前元素的类样式列表

​ .add:添加新样式,不会修改元素之前的类样式

​ .remove:移除样式

​ .toggle:切换样式

​ .contains:判断元素是否包含某个样式

五、表单元素的属性

​ 1.input: value属性可以设置和获取文本框的内容

​ 2.checked,disabled,readonly类似的属性,也可以通过点语法可设置和获取

​ > 如果没有赋值就是取值,它的值是bool值,特别对于checked属性,选中就是true,否则就是false

​ 3.button 标签的文本内容需要使用innerText/innerHTML, input/type=button需要使用value来设置

​ 3.textarea:它的内容设置需要使用value/innerHTML

六、定时器

1.开启定时器:

​ setInterval(执行的函数,时间间隔)

2.停止定时器:

​ > let timeId = setinterval()

​ > clearInterval(timeId)

二、事件类型

1.类型

click:鼠标单击 dblclick:鼠标双击 mouseenter:鼠标进入 mouseleave:鼠标离开 keydown:按键按下 keyup:按键松开 focus:聚焦事件 blur:失焦事件 input:内容改变事件 change: 1.普通的输入框:内容改变同时失焦 2.对于file:文件选择完毕之后

2.输入框的事件

focus:聚焦事件:只要获取焦点就会触发 blur:失焦事件:只要失去焦点就会触发 input:内容改变事件:只要内容改变,就会触发 change:内容改变的失焦事件:内容改变的同时,失去焦点就会触发

      // 添加输入框的获得焦点事件--聚焦事件
      username.addEventListener('focus', function() {
        username.style.outline = 'none'
        username.style.border = '1px solid red'
      })
      // 为输入框添加失焦事件:失去光标
      username.addEventListener('blur', function() {
        username.style.border = '1px solid #000'
      })

      // 对于键盘按键事件,先得让输入框聚焦
      username.addEventListener('keydown', function() {
        console.log('我按下一个键')
      })
      username.addEventListener('keyup', function() {
        console.log('我松开了')
      })