jQuery(六)、事件
博客已迁移到CSDN《https://blog.csdn.net/qq_33375499》
1 页面载入
1、ready(fn)
当DOM载入完后绑定一个要执行的函数。
这是事件模块中最重要的一个函数,可以极大地提高web应用程序的响应速度。
$(document).ready(function(){......});
// $(document).ready()的简写,同时内部的jQuery代码依然使用$作为别名,而不管全局的$为何
$(function($){.......});
2 事件处理
1、on(events, [selector], [data], fn)
在选择元素上绑定一个或多个事件的处理函数。
参数:
(1) events, [selecrot], [data], fn
events:一个或多个用空格分隔的事件类型和可选的命名空间,如 click 、keydown.myP。
selector:一个用于过滤触发事件的选择器字符串。
data:当一个事件被触发时要传递event.data给事件处理函数。
fn:该事件被触发时执行的函数。false值也可以做为一个函数的简写,返回false。
2、off(events, [selector])
在选择元素上移除一个或多个事件的处理函数。
off()方法移除用 on()绑定的事件处理程序。
3、bind(type, [data], fn)
为每个匹配元素的特定事件绑定事件处理函数。
参数:
(1) type, [data], function(eventObject)
type:含有一个或多个事件类型的字符串,多个用空格分隔。
data:作为event.data属性值传递给事件对象的额外数据对象。
fn:函数。false值也可以做为一个函数的简写,返回false。
(2) events:一个或多个事件类型的字符串和函数的数据映射。
// 同时绑定多个事件类型/处理程序
$("button").bind({
click:function(){$("p").slideToggle();},
mouseover:function(){$("body").css("background-color","red");},
mouseout:function(){$("body").css("background-color","#FFFFFF");}
});
4、one(type, [data], fn)
为每一个匹配元素的绑定一个一次性的事件处理函数。
5、trigger(type, [data])
在每一个匹配的元素上触发某类事件。
参数:
(1) type, [data]
type:一个事件对象或者要触发的事件类型
data:传递给events.data的附加参数
6、triggerHandler(type, [data])
触发指定的事件类型上所有绑定的处理函数。但不会执行浏览器默认动作,也不会产生事件冒泡。
这个方法的行为表现与trigger类似,但有以下三个主要区别:
- 它不会触发浏览器默认事件。
- 只触发jQuery对象集合中 第一个 元素的事件处理函数。
- 这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。如果最开始的jQuery对象集合为空,这个方法返回 undefined。
7、unbind(type, [data | fn])
bind()的反向操作,从每一个匹配的元素中删除绑定的事件。
var foo = function () {
// 处理某个事件的代码
};
$("p").bind("click", foo); // ... 当点击段落的时候会触发 foo
$("p").unbind("click", foo); // ... 再也不会被触发 foo
3 事件委派
1、live(type, [data], fn)
jQuery给所有匹配的元素附件一个事件处理函数,即使这个元素时以后再添加进来的也有效。
这个方法基本是 bind() 方法的一个变体。使用 bind() 时,选择器匹配的元素会附件一个事件处理函数,而以后添加进来的元素则不会有。为此需要再 bind一次。
事件委托: 绑定在祖先元素上的事件处理函数可以对在后代上触发的事件作出回应。传递给 live的事件处理函数不会绑定在元素上,而是把它作为一个特殊的事件处理函数,绑定在 DOM 数的根节点上。
2、die([type, [fn]])
从元素中删除先前用 live() 绑定的事件。
参数:
(1) die() :异常所有live() 绑定的事件。
(2) type,[, fn]
type:要移除的一个或多个事件类型,多个用空格分隔。
3、delegate(selector, [type], [data], fn)
指定的元素(属于被选元素的子元素)添加一个或多个事件处理函数
参数:
(1) selector:一个用于过滤的选择器字符串。
(2) type:事件类型,多个用空格分隔。
(3) data:传递到函数的额外data。
(4) fn:函数
4、undelegate([selector, [type], fn])
删除由delegate() 方法添加的一个或多个事件处理程序。
参数:
(1) selector:一个用于过滤的选择器字符串。
(2) type:事件类型,多个用空格分隔。
(3) fn:函数
(4) undelegate():删除所有用delegate() 方法添加的事件处理程序。
4 事件切换
1、hover([over,] out)
一个模范鼠标悬停事件的方法。
参数:
(1) over,out:鼠标移动到一个匹配的元素上面时,会触发over函数,移出是会触发out函数
(2) out:移入或移出触发函数
2、toggle([speed], [easing], [fn])
用于绑定两个或多个事件处理器函数,以响应被选元素的轮流click事件。
toggle() 如果元素是可见的,切换为隐藏;如果是隐藏的,切换为可见。
参数:
(1) toggle():切换显示 / 隐藏
(2) fn1, fn2[ ,fn2, fn4, .....]:轮流点击函数
(3) spend:隐藏/ 显示 效果的速度。默认为 ‘0’ 毫秒。
(4) easing:用来指定切换效果,默认是‘swing’,可用参数‘linear’
jQuery(六)、事件的更多相关文章
- 第二十六课:jQuery对事件对象的修复
因为原生的event对象,在不同浏览器下,有不同的属性和方法,因此需要用jQuery进行兼容. jQuery在这里分两步走,首先创建一个伪事件类jQuery.Event(jQuery里面自定义的事件类 ...
- 从零开始学习jQuery (五) 事件与事件对象
本系列文章导航 从零开始学习jQuery (五) 事件与事件对象 一.摘要 事件是脚本编程的灵魂. 所以本章内容也是jQuery学习的重点. 本文将对jQuery中的事件处理以及事件对象进行详细的讲解 ...
- [转]使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 事件详解
在前文<使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 默认配置与事件基础>中,Kayo 对 jQuery Mobile 事件的基 ...
- jQuery之事件和批量操作、事件委托示例
一.常用事件 click(function(){...}) // 点击时触发 focus(function(){...}) // 获得焦点触发 blur(function(){...}) // 失去焦 ...
- js进阶课程 12-9 jquery的事件对象event的方法有哪些?
js进阶课程 12-9 jquery的事件对象event的方法有哪些? 一.总结 一句话总结:三组六个,阻止默认事件一组,阻止冒泡一组,阻止冒泡和剩余事件一组. 1.事件的默认动作指什么? 比如点a标 ...
- Jquery的事件操作和文档操作
对于熟悉前端开发的小伙伴,相信对于Jquery一定不陌生,相对于JavaScript的繁琐,Jquery更加的简洁,当然简洁不意味着简单,我们可以使用Jquery完成我们想要实现全部功能,这里为小白们 ...
- 深入学习jQuery鼠标事件
× 目录 [1]类型 [2]写法 [3]合成事件[4]鼠标按键[5]修改键[6]坐标位置 前面的话 鼠标事件是DOM事件中最常用的事件,jQuery对鼠标事件进行了封装和扩展.本文将详细介绍jQuer ...
- jquery的事件命名空间详解
jquery现在的事件API:on,off,trigger支持带命名空间的事件,当事件有了命名空间,就可以有效地管理同一事件的不同监听器,在定义组件的时候,能够避免同一元素应用到不同组件时,同一事件类 ...
- jquery css事件编程 尺寸设置
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jquery css事件编程 位置 操作
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- 伪元素before after
什么是伪元素(Pseudo element)? 伪元素不是真正的元素,不存在与文档之中,所以js无法操作他.那为什么叫他"元素"?因为我们可以对其进行跟元素几乎无差别的操作. 伪元 ...
- djiango的模板语言(template)
老师的博客:http://www.cnblogs.com/liwenzhou/p/7931828.html 官方文档:https://docs.djangoproject.com/en/1.11/re ...
- 【转】AB实验设计思路及实验落地
这篇文章会讨论: 在什么情况下需要做 AB 实验 从产品/交互角度,如何设计一个实验 前端工程师如何打点 如何统计数据,并保证数据准确可信 如何分析实验数据,有哪些数据需要重点关注 附:如何搭建前端实 ...
- KnockOut 绑定之foreach绑定
foreach绑定对于数组中的每一个元素复制一节标记语言,也就是html,并且将这节标记语言和数组里面的每一个元素绑定.当我们呈现一组list数据,或者一个表格的时候,十分有用. 如果你绑定的数组是一 ...
- 将个人博客从GitHub迁移至阿里云服务器过程总结
让我们先回顾下前两篇博客: 程序员如何从0到1搭建自己的技术博客 在个人博客中优雅的使用Gitalk评论插件 通过前两篇博客,我们了解了如何快速的从0到1搭建一个个人博客并使用了Gitalk评论插件, ...
- Java_基础篇(数组的反转)
数组反转也是Java的基础. 数组反转要求掌握的是: 1).创建一个数组,在内存中申请一块空间. 2).实例化数组. 3).对数组的了解.如:数组的长度,数组的下标,数组的表示方法. 4).数组的交换 ...
- OO第二单元作业小结
前言 转眼已是第九周,第二单元的电梯系列作业已经结束,终于体验了一番多线程电梯之旅. 第一次作业是单电梯的傻瓜调度,虽然是第一次写多线程,但在课程PPT的指引下,写起来还是非常容易:第二次作业是单电梯 ...
- Promise(避免金字塔回调)
前后端分离开发,前端通过接口获取数据,但是有的页面不止一个接口,就会出现金字塔回调,可以通过 Promise 封装请求. request-data.js: function reqData(postu ...
- 浅谈CSS浮动属性
要介绍css的float浮动属性,就必须先了解一下标准文档流 标准文档流: 在没有css的干预下,块级元素独占一行,可以设置宽高,行内元素并排显示,宽高自动填充. HTML页面的标准文档流(默 ...
- 将一个html文件引入另一个html文件的div中
width="" height=""属性可根据要求自己设定