26.js事件

事件:用户行为

事件三要素:

        事件源  事件类型 事件处理函数

事件绑定

语法1:dom 0级(dom 0级指最原始的,在dom标准被正式定义之前的事件处理方式,事件处理函数通常在<script>标签中或直接在HTML元素的事件属性上)

        事件源.on事件类型=事件处理函数

        一个事件源一个事件类型一次只能绑定一个事件,如:

        

语法2:dom 2级(是w3c文档对象模型(DOM)标准中定义的一个更高级别的事件处理模型,它提供了比DOM0级更丰富的功能和更好的事件控制能力)

        事件源.addEventListener(事件类型,事件处理函数,false(事件冒泡)/true(事件捕获))

        同一个事件源同一个事件类型可以绑定多个事件处理函数,从上到下依次执行,如:

事件解绑

语法1 dom 0级

        事件源.on事件类型=null

语法2 dom  2级

        事件源.removeEventListener(事件类型,事件处理函数名)

鼠标事件

1.click                    左键单击

2.dbclick                左键双击

3.contextmenu       右键单击

4.mousedown        鼠标按下

5.mouseup             鼠标抬起

6.mousemove         鼠标移动

7.mouseover           鼠标移入

8.mouseout             鼠标移出

9.mouseenter            鼠标移入

10.mouseleave        鼠标移出

7.8是一组  9.10是一组

区别:mouseenter(9.10)不发生事件冒泡,只会在特定元素上触发,mouseover(7.8)会发生事件冒泡,即在子元素上触发的事件会向上传递至父级元素,并触发绑定在父级元素上的相应事件

键盘事件

不是所有的元素都可以触发键盘事件

1.onkeydown   键盘按下

2.onkeyup        键盘抬起

3.onkeypress   键入内容

结合onkeydown获取当前按下的键:

document.onkeydown=function(e){
        console.log(e.key,"按下的键",e.keycode,"对应的keycode")
        if(e.ctrlKey===true){
             console.log('按下了ctrl键')
        }else if(e.shiftkey===true){
             console.log('按下了shift键')
        }else if(e.alt===true){
             console.log('按下了alt键')
        }
}

表单事件

必须绑定在表单元素上

1.focus         获取焦点

2.blur           失去焦点

3.input          表单键入触发

4.change      内容改变触发

5.sumbit       表单提交 要from绑定

6.reset          表单重置 要form绑定

触摸事件

tochstart         触摸开始

touchmove      正在触摸

touchend         触摸结束

 事件对象

 每个事件都有一个事件对象,存放所有信息

  语法:

        事件源.on事件类型=function(e){

               事件函数的第一个形参永远都是事件对象,此时e就是事件对象

         }

相关推荐

  1. js 事件模型 事件捕获、事件冒泡

    2024-07-16 16:26:02       33 阅读
  2. js事件流模型

    2024-07-16 16:26:02       58 阅读
  3. js事件循环

    2024-07-16 16:26:02       48 阅读
  4. js事件

    2024-07-16 16:26:02       34 阅读
  5. Node.js 事件循环

    2024-07-16 16:26:02       22 阅读
  6. 事件触发、事件捕获与事件冒泡(js的问题)

    2024-07-16 16:26:02       66 阅读
  7. js 事件处理(addEventListener() 、removeEventListener())

    2024-07-16 16:26:02       50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-16 16:26:02       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-16 16:26:02       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-16 16:26:02       62 阅读
  4. Python语言-面向对象

    2024-07-16 16:26:02       72 阅读

热门阅读

  1. 05 - FFmpeg 提取 PCM 音频裸数据

    2024-07-16 16:26:02       19 阅读
  2. Linux exec 命令和Python exec 函数 区别

    2024-07-16 16:26:02       25 阅读
  3. Nextjs 调用组件内的方法

    2024-07-16 16:26:02       23 阅读
  4. HW面试经验分享 | 北京蓝中研判岗

    2024-07-16 16:26:02       24 阅读
  5. HOW - React Suspense 优化懒加载和异步数据加载

    2024-07-16 16:26:02       25 阅读
  6. 消息队列-RabbitMQ

    2024-07-16 16:26:02       20 阅读
  7. jquery ajax实现上传文件

    2024-07-16 16:26:02       23 阅读
  8. 八、golang基础之reflect反射

    2024-07-16 16:26:02       18 阅读
  9. 关键字 internal

    2024-07-16 16:26:02       24 阅读
  10. c++字符串实现join方法,使用模板

    2024-07-16 16:26:02       25 阅读
  11. vue3 笔记

    2024-07-16 16:26:02       21 阅读
  12. Hive 常见问题

    2024-07-16 16:26:02       18 阅读
  13. Docker_指令篇

    2024-07-16 16:26:02       24 阅读
  14. 【利用Selenium+autoIt实现文件上传】

    2024-07-16 16:26:02       21 阅读