1. ready(fn), 当DOM载入就绪可以查询及操纵时绑定一个要执行的函数

这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。

在DOM加载完成时运行的代码,可以这样写

$(document).ready(function(){
// 在这里写你的代码...
});

使用 $(document).ready() 的简写,同时内部的 jQuery 代码依然使用 $ 作为别名,而不管全局的 $ 为何。

$(function($) {
// 你可以在这里继续使用$作为别名...
});

2. submit([[data],fn]), 当提交表单时,会发生 submit 事件

该事件只适用于表单元素。

参数说明:

  • fn:在每一个匹配元素的submit事件中绑定的处理函数
  • [data],fn
    • data:submit([Data], fn) 可传入data供函数fn处理
    • fn:在每一个匹配元素的submit事件中绑定的处理函数
$("form:first").submit();

//阻止表单提交
$("form").submit( function () {
return false;
} );

3. select([[data],fn]), 当 textarea 或文本类型的 input 元素中的文本被选择时,会发生 select 事件

这个函数会调用执行绑定到select事件的所有函数,包括浏览器的默认行为。可以通过在某个绑定的函数中返回false来防止触发浏览器的默认行为。

参数说明:

  • fn:在每一个匹配元素的select事件中绑定的处理函数
  • [data], fn
    • data:select([Data], fn) 可传入data供函数fn处理
    • fn:在每一个匹配元素的select事件中绑定的处理函数
//触发所有input元素的select事件
$("input").select();
//当文本框中文本被选中时执行的函数
$(":text").select( function () { /* ...do something... */ } );

4. scroll([[data],fn]), 当用户滚动指定的元素时,会发生 scroll 事件

scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口)。

参数说明:

  • fn:在每一个匹配元素的scroll事件中绑定的处理函数
  • [data],fn
    • data:scroll([Data], fn) 可传入data供函数fn处理。

    • fn:在每一个匹配元素的scroll事件中绑定的处理函数。
//当页面滚动条变化时,执行的函数
$(window).scroll( function() { /* ...do something... */ } ); //对元素滚动的次数进行计数
$("div").scroll(function() {
$("span").text(x+=1);
});

5. resize([[data],fn]), 当调整浏览器窗口的大小时,发生 resize 事件

参数说明:

  • fn:在每一个匹配元素的resize事件中绑定的处理函数
  • [data],fn
    • data:resize([Data], fn) 可传入data供函数fn处理。

    • fn:在每一个匹配元素的resize事件中绑定的处理函数。
//让人每次改变页面窗口的大小时很郁闷的方法
$(window).resize(function(){
alert("Stop it!");
}); //对浏览器窗口调整大小进行计数
$(window).resize(function() {
$('span').text(x+=1);
});

6. mouseup([[data],fn]), 当在元素上放松鼠标按钮时,会发生 mouseup 事件

与 click 事件不同,mouseup 事件仅需要放松按钮。当鼠标指针位于元素上方时,放松鼠标按钮就会触发该事件。

参数说明:

  • fn:在每一个匹配元素的mouseup事件中绑定的处理函数
  • [data],fn
    • data:mouseup([Data], fn) 可传入data供函数fn处理。

    • fn:在每一个匹配元素的mouseup事件中绑定的处理函数。
//当松开鼠标按钮时,隐藏或显示元素
$("button").mouseup(function(){
$("p").slideToggle();
});

类似的还有:

  • mouseout([[data],fn]):当鼠标指针从元素上移开时,发生 mouseout 事件
  • mousemove([[data],fn]):当鼠标指针在指定的元素中移动时,就会发生 mousemove 事件
  • mouseover([[data],fn]):当鼠标指针位于元素上方时,会发生 mouseover 事件
  • mouseleave([[data],fn]):当鼠标指针离开元素时,会发生 mouseleave 事件。该事件大多数时候会与mouseenter 事件一起使用。与 mouseout 事件不同,只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。如果鼠标指针离开任何子元素,同样会触发 mouseout 事件。
  • mouseenter([[data],fn]):当鼠标指针穿过元素时,会发生 mouseenter 事件。该事件大多数时候会与mouseleave 事件一起使用。与 mouseover 事件不同,只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。如果鼠标指针穿过任何子元素,同样会触发 mouseover 事件。
  • mousedown([[data],fn]):当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。mousedown 与 click 事件不同,mousedown 事件仅需要按键被按下,而不需要松开即可发生。

7. keyup([[data],fn]), 当按钮被松开时,发生 keyup 事件。它发生在当前获得焦点的元素上

注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。

参数说明:

  • fn:在每一个匹配元素的keyup事件中绑定的处理函数
  • [data],fn
    • data:keyup([Data], fn) 可传入data供函数fn处理。
    • fn:在每一个匹配元素的keyup事件中绑定的处理函数。
//当按下按键时,改变文本域的颜色
$("input").keyup(function(){
$("input").css("background-color","#D6D6FF");
});

类似的还有:

  • keypress([[data],fn]):当键盘或按钮被按下时,发生 keypress 事件。keypress 事件与 keydown 事件类似。当按钮被按下时,会发生该事件。它发生在当前获得焦点的元素上。 不过,与 keydown 事件不同,每插入一个字符,就会发生 keypress 事件。注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。
  • keydown([[data],fn]):当键盘或按钮被按下时,发生 keydown 事件。如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。

8. focusout([data],fn), 当元素失去焦点时触发 focusout 事件

focusout事件跟blur事件区别在于,他可以在父元素上检测子元素失去焦点的情况。

类似的还有:

  • focusin([data],fn):当元素获得焦点时,触发 focusin 事件。focusin事件跟focus事件区别在于,他可以在父元素上检测子元素获取焦点的情况。
  • focus([[data],fn]):当元素获得焦点时,触发 focus 事件。可以通过鼠标点击或者键盘上的TAB导航触发。这将触发所有绑定的focus函数,注意,某些对象不支持focus方法。
  • focus([[data],fn]):当元素获得焦点时,触发 focus 事件。可以通过鼠标点击或者键盘上的TAB导航触发。这将触发所有绑定的focus函数,注意,某些对象不支持focus方法

9. dblclick([[data],fn]), 当双击元素时,会发生 dblclick 事件

当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click。在很短的时间内发生两次 click,即是一次 double click 事件。提示:如果把 dblclick 和 click 事件应用于同一元素,可能会产生问题。

$("p").dblclick( function () { alert("Hello World!"); });

10. click([data],fn]), 触发每一个匹配元素的click事件

参数说明:

  • data:click([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的click事件中绑定的处理函数。
$("p").click();

11. change([data],fn]), 当元素的值发生改变时,会发生 change 事件

该事件仅适用于文本域(text field),以及 textarea 和 select 元素。当用于 select 元素时,change 事件会在选择某个选项时发生。当用于 text field 或 text area 时,该事件会在元素失去焦点时发生。

参数说明:

  • data:change([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的change事件中绑定的处理函数。
$(selector).change();

$("input[type='text']").change( function() {
// 这里可以写些验证代码
});

12. blur([data],fn]), 当元素失去焦点时触发 blur 事件

这个函数会调用执行绑定到blur事件的所有函数,包括浏览器的默认行为。可以通过返回false来防止触发浏览器的默认行为。blur事件会在元素失去焦点的时候触发,既可以是鼠标行为,也可以是按tab键离开的。

参数说明:

  • data:blur([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的blur事件中绑定的处理函数。
$("p").blur();

$("p").blur( function () { alert("Hello World!"); } );

13. toggle([speed],[easing],[fn]), 用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件

如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。

1.9版本 .toggle(function, function, … ) 方法删除,jQuery Migrate(迁移)插件可以恢复此功能。

参数说明:

  • [speed] [,fn]
    • speed: 隐藏/显示 效果的速度。默认是 "0"毫秒。可能的值:slow,normal,fast。"
    • fn:在动画完成时执行的函数,每个元素执行一次。
    • speed: 隐藏/显示 效果的速度。默认是 "0"毫秒。可能的值:slow,normal,fast。"

    • easing:(Optional) 用来指定切换效果,默认是"swing",可用参数"linear"

    • fn:在动画完成时执行的函数,每个元素执行一次。

  • switch
    • 用于确定显示/隐藏的开关。如:true - 显示元素,false - 隐藏元素
$('td).toggle();

$("p").toggle("slow");

$("p").toggle("fast",function(){
alert("Animation Done.");
}); $('#foo').toggle(showOrHide); //相当于
if (showOrHide) {
$('#foo').show();
} else {
$('#foo').hide();
}

14. hover([over,]out), 模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法

鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。而且,会伴随着对鼠标是否仍然处在特定元素中的检测(例如,处在div中的图像),如果是,则会继续保持“悬停”状态,而不触发移出事件

参数说明:

  • over,out

    • over:鼠标移到元素上要触发的函数
    • out:鼠标移出元素要触发的函数
$("td").hover(
function () {
$(this).addClass("hover");
},
function () {
$(this).removeClass("hover");
}
);

15. triggerHandler(type, [data]), 触发指定的事件类型上所有绑定的处理函数

这个方法的行为表现与trigger类似,但有以下三个主要区别:

  • 不会触发浏览器默认事件, 也不会产生事件冒泡
  • 只触发jQuery对象集合中第一个元素的事件处理函数
  • 返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回 undefined 。

参数说明:

  • type,[data]  String,Array
    • type:要触发的事件类型
    • data:传递给事件处理函数的附加参数
//如果你对一个focus事件执行了 .triggerHandler() ,浏览器默认动作将不会被触发,只会触发你绑定的动作。
//html代码
<button id="old">.trigger("focus")</button>
<button id="new">.triggerHandler("focus")</button><br/><br/>
<input type="text" value="To Be Focused"/> //jquery代码
$("#old").click(function(){
$("input").trigger("focus");
});
$("#new").click(function(){
$("input").triggerHandler("focus");
});
$("input").focus(function(){
$("<span>Focused!</span>").appendTo("body").fadeOut(1000);
});

16. trigger(type,[data]), 在每一个匹配的元素上触发某类事件

这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。

参数说明:

  • type,[data]   String|Event,Array

    • type:一个事件对象或者要触发的事件类型;Event 是事件发生时运行的函数

    • data:传递给事件处理函数的附加参数

//提交第一个表单,但不用submit()
$("form:first").trigger("submit") //给一个事件传递参数
$("p").click( function (event, a, b) {
// 一个普通的点击事件时,a和b是undefined类型
// 如果用下面的语句触发,那么a指向"foo",而b指向"bar"
} ).trigger("click", ["foo", "bar"]); //下面的代码可以显示一个"Hello World"
$("p").bind("myEvent", function (event, message1, message2) {
alert(message1 + ' ' + message2);
});
$("p").trigger("myEvent", ["Hello","World!"]);

17. one(type,[data],fn), 为每一个匹配元素的特定事件(像click)绑定一个一次性的事件处理函数

在每个对象上,这个事件处理函数只会被执行一次。

这个事件处理函数会接收到一个事件对象,可以通过它来阻止(浏览器)默认的行为。如果既想取消默认的行为,又想阻止事件起泡,这个事件处理函数必须返回false。

参数说明:

  • type,[data],fn    String,Object,Function

    • type:添加到元素的一个或多个事件。由空格分隔多个事件。必须是有效的事件。
    • data:将要传递给事件处理函数的数据映射
    • fn:每当事件触发时执行的函数。
//当所有段落被第一次点击的时候,显示所有其文本。
$("p").one("click", function(){
alert( $(this).text() );
});

18. off(events,[selector],[fn]), 选择元素上移除一个或多个事件的事件处理函数 v1.7

off() 方法移除用.on()绑定的事件处理程序。

当有多个过滤参数,所提供的参数都必须匹配的事件处理程序被删除。

$("p").off()

$("p").off( "click", "**" )

jQuery中的事件(七)的更多相关文章

  1. JQuery制作网页—— 第七章 jQuery中的事件与动画

    1. jQuery中的事件: ●和WinForm一样,在网页中的交互也是需要事件来实现的,例如tab切换效果,可以通过鼠标单击事件来实现 ●jQuery事件是对JavaScript事件的封装,常用事件 ...

  2. jQuery中的事件与动画 (你的明天Via Via)

    众所周知,页面在加载时,会触发load事件:当用户单击某个按钮时,会触发该按钮的click事件. 这些事件就像日常生活中,人们按下开关,灯就亮了(或者灭了),往游戏机里投入游戏币就可以启动游戏一样, ...

  3. jQuery中的事件绑定方法

    在jQuery中,事件绑定方法大致有四种:bind(),live(), delegate(),和on(). 那么在工作中应该如何选择呢?首先要了解四种方法的区别和各自的特点. 在了解这些之前,首先要知 ...

  4. jQuery:详解jQuery中的事件(二)

    上一篇讲到jQuery中的事件,深入学习了加载DOM和事件绑定的相关知识,这篇主要深入讨论jQuery事件中的合成事件.事件冒泡和事件移除等内容. 接上篇jQuery:详解jQuery中的事件(一) ...

  5. jQuery:详解jQuery中的事件(一)

    之前用过一些jQuery的动画和特效,但是用到的部分也不超过10%的样子,感觉好浪费啊——当然浪费的不是jQuery,而是Web资源.后来就想深入研究下jQuery的内部机理,读过两遍jQuery源代 ...

  6. jQuery学习笔记(三)jQuery中的事件

    目录 加载DOM 事件绑定 合成事件 事件冒泡 移除事件 一.加载DOM Javascript 与HTML之间的交互是通过用户操作浏览器页面引发的事件来处理的.jQuery提供了丰富的事件处理机制.从 ...

  7. Javascript事件模型系列(三)jQuery中的事件监听方式及异同点

    作为全球最知名的js框架之一,jQuery的火热程度堪称无与伦比,简单易学的API再加丰富的插件,几乎是每个前端程序员的必修课.从读<锋利的jQuery>开始,到现在使用jQuery有一年 ...

  8. Jquery中的事件和动画

    在学习Jquery中的过程中我们绝大部分都用到了事件的操作,也可以说事件是Jquery中必不可少的一部分,我们常见的一些事件有单击事件,鼠标事件,键盘事件等等.在Jquery中的学习中为了能使让页面以 ...

  9. jQuery中的事件机制深入浅出

    昨天呢,我们大家一起分享了jQuery中的样式选择器,那么今天我们就来看一下jQuery中的事件机制,其实,jQuery中的事件机制与JavaScript中的事件机制区别是不大的,只是,JavaScr ...

  10. jQuery中的事件和动画——《锋利的jQuery》(第2版)读书笔记2

    第4章 jQuery中的事件和动画 jQuery中的事件 加载DOM $(document).ready(function(){   // 编写代码... }); 可以简写成: $(function( ...

随机推荐

  1. Linux 和 Windows 查看当前运行的 python 进程及 GPU、CPU、磁盘利用率

    目录 查看当前 python 进程 Linux Windows 查看 GPU 利用率 Linux Windows Linux CPU 利用率 Linux 磁盘利用率 查看当前 python 进程 Li ...

  2. es6 Iterator和for...of循环

    javascript表示集合的数据结构有 es5: array object es6: map set, 一共4种数据集合 需要一种统一的接口机制来处理所有不同的数据结构 遍历器就是这样一种机制,它是 ...

  3. HTML连载48-清除浮动的其中两种方式

    一.清除浮动的方式一 给前面一个父元素设置高度,​注意:企业开发中能不写高度就不写高度 <!DOCTYPE html> <html lang="en"> & ...

  4. 不为人知的网络编程(九):理论联系实际,全方位深入理解DNS

    本文原作者:selfboot,博客地址:selfboot.cn,Github地址:github.com/selfboot,感谢原作者的技术分享. 1.引言 对于 DNS(Domain Name Sys ...

  5. IT兄弟连 Java语法教程 流程控制语句 循环结构语句4

    do-while循环 Java还有一种循环是do-while.与for.while这些在循环顶部判断条件表达式的语句不同,do-while是在循环底部进行条件表达式的检查.这意味着do-while循环 ...

  6. JAVA 十六进制和十进制、二进制转换

    java十六进制和十进制.二进制转换 十进制转化成十六进制 Integer x = 100; hex = x.toHexString(x); 十六进制转化成十进制 Integer.parseInt(h ...

  7. Spring MVC整合FreeMarker

    什么是Freemarker?    FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出.FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或 ...

  8. MySQL GROUP BY 的问题

    拿 employee 示例数据库为例,当进行如下操作时会报错. mysql> SELECT * FROM employees GROUP BY gender; ERROR 1055 (42000 ...

  9. linux下 sort | uniq | wc | less 几个命令的基本用法

    sort -f :忽略大小写的差异,例如 A 与 a 视为编码相同: -b :忽略最前面的空格符部分: -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法: -n :使用『纯数字』进行 ...

  10. ABP进阶教程5 - 多语言配置

    点这里进入ABP进阶教程目录 更新脚本 打开展示层(即JD.CRS.Web.Mvc)的\wwwroot\view-resources\Views\Course\Index.js //用以存放Cours ...