jQuery事件1-第5次课-JQ的事件跟JS一样的作用,只是写法不一样-附案例、任务

简介: jQuery事件1-第5次课-JQ的事件跟JS一样的作用,只是写法不一样-附案例、任务
一、绑定事件的3种方式
  1. 行内事件
//JQ和JS一样
<div οnclick="fun(this)"></div>
<script>
    function fun(obj){
        //fun即为事件处理程序
        obj.style.color='red';
    }
</script>
//JQ
<div οnclick="fun(this)"></div>
<script>
    function fun(obj){
        //fun即为事件处理程序
        $(obj).css("color",'red');
    }
</script>
  1. 缺点:
    能不用就不用,耦合度很低,因为HTML和JS混在一起,维护起来就比较麻烦
  2. 给元素的事件属性添加方法
//JS:
var odiv=document.getElementById("box");
  odiv.onclick=function(){
    }
//缺点:只能写一个同类型的事件,团队协作中,经常会给同一个元素绑定相同的事件类型,就会存在覆盖问题。
//JQ:
$("#box").click(function(event){
    //$("#box")  事件源
    //click 事件类型
    //click的参数为函数,该函数即为事件处理程序
    //event 事件对象
});
//键盘抬起
$("#ipt").keyup(function(){
});
  1. 事件监听-官方的推荐方式
//JS
var odiv=document.getElementById("box");
  odiv.addEventListner("click",function(){
       //写函数体                  
},false)
//JQ:
可以给同一个元素绑定不同的事件类型,或者给同一个元素绑定相同的事件类型。
1.
  $("div").bind('事件类型1',事件函数);
  $("div").bind('事件类型1 事件类型2',事件函数);
  //多个事件类型都共用同一个事件函数,即触发的事件都会执行相同的事件函数。
  比如:
    $("div").bind('click',function(){});
  比如:
    $("div").bind('click mouseout',function(){});
2. 链式操作,比如给它绑定不同的事件和不同的事件处理函数
  $("div").bind('事件类型1',function(){}).bind('事件类型2',function(){});
3.对象的写法
  $("div").bind({
        click:function(){
            //事件1的写法
        },
        mouseout:function(){
            //事件2的写法
        }
    });
//总结:以上3种写法可任选一种,怎么玩都不会出问题
二、JQ特有的绑定事件的方式
  1. hover 合成事件 = mouseover+mouseout
    其实click也相当于是合成事件:mousedown+mouseup
    使用场景:主要是用来做移入移出时的显示和隐藏特效。
    类似于css的hover伪类。
$("div").hover(鼠标移入时的函数,鼠标离开时的函数);
//说明:
1、当鼠标移入到绑定的元素上时,自动执行函数1
2、当鼠标离开该元素时,则自动执行函数2
  1. one 一次性事件
$("div").one("click",function(){
    alert("执行一次再次执行则失效")
})
//js没有,原理,是在执行完后将其解绑
三、事件解绑
  1. 给第二种绑定事件的方式解绑
//JS
元素.事件类型=null;//解绑
  1. 事件监听
//jQ
元素.removeEventListner("click",函数名);
  1. JQ的解绑方式使用unbind的好处:
  1. 不区分你是用何种方式绑事件的,都可以用unbind来解绑
  2. 可以一次性解绑该元素身上的某个事件或某类型事件或全部事件
$("div").unbind("click");// 解绑该div上的click事件
$("div").unbind("click",函数名);//解绑该div上特定的点击事件
$("div").unbind();//解绑它身上所有的事件,不区分事件类型
相关单词
  1. bind 绑定、捆绑
  2. one 一个
  3. unbind 解绑

资料、作业、笔记下载链接: https://www.imqd.cn/how-to-use-jquery-event.html

目录
打赏
0
0
0
0
1
分享
相关文章
深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
Array.find() 是 JavaScript 数组方法中一个非常实用和强大的工具。它不仅提供了简洁的查找操作,还具有性能上的独特优势:返回的引用能够直接影响原数组的数据内容,使得数据更新更加高效。通过各种场景的展示,我们可以看到 Array.find() 在更新、条件查找和嵌套结构查找等场景中的广泛应用。 在实际开发中,掌握 Array.find() 的特性和使用技巧,可以让代码更加简洁高效,特别是在需要直接修改原数据内容的情形。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
MutationObserver 是一个非常强大的 API,提供了一种高效、灵活的方式来监听和响应 DOM 变化。它解决了传统 DOM 事件监听器的诸多局限性,通过异步、批量的方式处理 DOM 变化,大大提高了性能和效率。在实际开发中,合理使用 MutationObserver 可以帮助我们更好地控制 DOM 操作,提高代码的健壮性和可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
40个JS常用使用技巧案例
大家好,我是V哥。在日常开发中,JS是解决页面交互的利器。V哥总结了40个实用的JS小技巧,涵盖数组操作、对象处理、函数使用等,并附带案例代码和解释。从数组去重到异步函数,这些技巧能显著提升开发效率。先赞再看后评论,腰缠万贯财进门。关注威哥爱编程,全栈开发就你行!
85 16
Node.js 中实现多任务下载的并发控制策略
Node.js 中实现多任务下载的并发控制策略
js+jquery实现贪吃蛇经典小游戏
本项目采用HTML、CSS、JavaScript和jQuery技术,无需游戏框架支持。通过下载项目文件至本地,双击index.html即可启动贪吃蛇游戏。游戏界面简洁,支持方向键控制蛇移动,空格键实现游戏暂停与恢复功能。
107 14
jQuery多功能滑块插件r-slider.js
r-slider.js是一款jQuery多功能滑块插件。使用该插件,可以制作出滑块、开关按钮、进度条、向导步骤等多种效果。
86 5
jQuery鹰眼视图小地图定位预览插件minimap.js
这是一个jQuery小地图定位预览视图,默认左侧是页面主要内容,minimap.js的好处就是在它的右侧形成一个快速定位通道,产生一个缩小版的页面,即预览效果,可以点击并快速定位到页面的某个位置。简单实用,欢迎下载!
66 0
深入了解jQuery:快速、高效的JavaScript库
【10月更文挑战第11天深入了解jQuery:快速、高效的JavaScript库
66 0
深入理解jQuery:高效DOM操作与事件处理
【10月更文挑战第11天】深入理解jQuery:高效DOM操作与事件处理
58 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等