jQuery事件操作

简单方式注册/移除事件

注册:jq对象 .on(‘事件名 例如click’,‘事件处理程序’)

移除:jq对象.off(‘事件名’,‘事件处理程序’)

事件处理程序在如果需要移除 就要单独写出来 然后调用就可以 个人感觉还是写外面吧。。万一我想移除了呢= =

另外 如果给一个元素多次注册事件 也不会被叠加 因为他的底层本质是事件监听

事件委托方式注册/移除事件

在写之前还是先回顾一下事件委托吧。。。
什么是事件委托呢 事件委托 就是为了优化程序 提升程序的性能 在事件类型一样的时候 可以把子孙元素委托给上级元素
在原生js中 实现事件委托很麻烦 emmm
步骤如下:
给上级元素注册添加事件
2.通过事件对象.属性 例如 target 哪个点击了 事件对象.target就代表谁 (可以说事件委托的核心就是target)
3.可以选择用nodeName或者类名className 去检测触发的是哪个元素 或者触发的是不是指定元素 注意 在获取nodeName的时候 是要去找全部大写的节点名
可以根据属性和属性值去判断点击的是不是这个元素

注册:jq对象【被委托干活的】.on(‘事件名’,‘选择器’,‘事件处理程序’)

其中 jq对象是那个被委托干活的 事件名是例如 click 这种的 选择器 是派活给jq对象的 事件处理程序还是和上面一样 要移除的话就写外面 里面调用

移除:jq对象.off(‘事件名’,‘选择器’,‘事件处理程序’)

在原生js里的 e.target 在jQuery里 用this表示
只有点击选择器指定的元素 才会执行下面的代码

模拟触发事件tigger(‘事件名’)

语法:jq对象.tigger(‘事件名’)
其实和直接的.click没啥区别 可能主要的区别就是 可以在console里写jq需要被触发的对象.tigger模拟触发(‘事件名’)

事件对象

事件对象。。大概就是e event了吧。。。。和原生js一样
鼠标键盘事件和原生js差不多

鼠标事件:

参照浏览器:事件对象.clientX/Y
参照文档:事件对象.pageX/Y
参照元素:事件对象.offsetX/Y

键盘事件:

事件对象.keyCode 返回键码值
事件对象:alt/shift/ctrlKey 返回布尔值 检测是否按下

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,720评论 1 11
  • (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...
    凛0_0阅读 1,532评论 0 8
  • 本篇博客源地址 总结: 鼠标事件 1.click与dbclick事件ele.click()ele.click(ha...
    ZombieBrandg阅读 758评论 0 1
  • 总结: 鼠标事件 1.click与dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r阅读 1,732评论 2 10
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 5,558评论 0 21

友情链接更多精彩内容