(一)、事件列表。

  1.blur()      当失去焦点时触发。包括鼠标点击离开和TAB键离开。

  2.change()     当元素获取焦点后,值改变失去焦点事触发。

  3.click()      当鼠标单击时触发。

  4.dblclick()     当鼠标双击时触发。

  5.error()      当javascript出错或img的src属性无效时触发。

  6.focus()       当元素获取焦点时触发。注意:某些对象不支持。

  7.focusin()      当元素或其子元素获取焦点时触发,与focus()区别在于能够检测其内部子元素获取焦点的情况。

  8.focusout()    当元素或者其子元素失去焦点时触发,与focusout()区别在于能够检测内部子元素失去焦点的情况。 

  9.keydown()     当键盘按下时触发。

  10.keyup()    当按键松开时触发。

  11.mousedown()    当鼠标在元素上点击后触发。

  12.mouseenter()    当鼠标在元素上穿过时触发。mouseenter与mouseover的区别是,鼠标从mouseover的子元素上穿过时也会触发而mouseenter不会。

  13.mouseleave()    当鼠标从元素上移出时触发。

  14.mousemove()     当鼠标在元素上移动时触发。.clientX 和 .clientY分别代表鼠标的X坐标与Y坐标。

  15.mouseout()       当鼠标从元素上移开时触发。

  16.mouseover()     当鼠标移入元素时触发。

  17.mouseup()        当鼠标左键按下释放时触发。

  18.resize()         当浏览器窗口大小改变时触发。 $(window).resize();

  19.scroll()        当滚动条发生变化时触发。

  20.select()         当input里的内容被选中时触发。

  21.submit()       提交选中的表单。

  22.unload()       当页面卸载时触发。  

(二)、事件常用方法

    1、绑定事件

    语法:bind(type,[data],fn)  type参数可以是顶部的22个方法(注意:不能带括号); 参数data是属性值传递给事件对象的额外数据,fn是处理函数。可以bind多个事件,也可以为同一事件绑定多个函数。

    $("#div1").bind("change",function(){ alert("你好!"); })

    $("#div1").bind("click mouseout",function(){ alert("你好!"); })

    2、切换事件

       语法:hover(fn1,fn2);    鼠标移入执行第一个函数,鼠标移出执行第二个函数。相当于mouseenter与mouseleave。

        $("#div1").hover(function(){alert("鼠标移入我啦");},function(){alert("鼠标移出我啦!");})

    3、顺序执行事件

      语法:toggle(fn1,fn2,fn3...)   当鼠标单击时,依次执行绑定的事件

        $("#div1").toggle(function(){alert(1);},function(){alert(2);},function(){alert(3);})

    4、unbind 移除事件

      语法:unbind([type],[fn])     移除元素已经绑定的事件,type:指定要移除的事件,fn指定要移除的方法。当没有参数时,所有的事件都移除。注意,用live()方法绑定的方法移出不了,live()绑定的方法要用它自己的die()来移出。

        $(":button").unbind();     移除按钮的所有事件。

        $(":button").unbind("click");     移除按钮的单击事件。

        $(":button").unbind("click",fn1);     移除按钮的单击事件中的fn1函数,如果该事件绑定了多个函数,对其他函数没影响。

     5、one 仅执行一次的事件

      语法:one(type,[data],fn)    绑定一个仅执行一次的事件

        $("#div1").one("click",function(){ alert("我只执行一次!"); })

    6、trigger DOM加载完毕后自动执行的事件

      语法:trigger(type,[data])    DOM元素加载完成后自动执行

      $("#div1").bind("bclick",function(){ alert("你好"); });

      $("#div1").trigger("bclick");    //注意,trigger一定要放在绑定的事件之后,否则不执行。

    7、live() DOM根节点绑定事件

      语法:live(type,[fn])     String,Function

         live(type,[data],false)    String,Array,bool

      live()在根节点绑定事件,通过事件冒泡到DOM根节点($(ducoment)),再对比触发事件的元素来判断事件是否应该执行。效率不高,因此不能完全替代bind()但是有个好处,就是后期加载出来的元素同样能够绑定。但是有个缺点,就是live()方法仅仅能使用CSS选择器选择被绑定元素。

      如$('a').live('click', function(){alert("你好!");})  JQuery把alert函数绑定到$(document)元素上,并使用’click’和’a’作为参数。任何时候只要有事件冒泡到document节点上,它就查看该事件是否是一个click事件,以及该事件的目标元素与’a’这一CSS选择器是否匹配,如果都是的话,则执行函数。

      live(type,data,fn) 

      $("#div1").live("click",function(){ alert("你好"); })  //即使页面一开始不存在id="div1"的元素,是后期AJAX或js加载上去的,但是依然有效。 

      $("#div1").live("click mouseout",function(){ alert("你好"); })  //可以live()多个事件。 

    8、die() 解除live()方法绑定的事件  //绑定与解除是对应的,die()解除不了bind()和delegate绑定的方法。 可以为一个元素live多个事件,也可以为同一事件live多个函数。

      语法die(type,[fn])  string Function其中Function为可选方法。

      $("#div1").die();

      $("#div1").die("click");

      $("#div1").die("click",fn1);  //其中fn1为某函数名。如果是绑定的是一个匿名函数,第二个参数用于当为同一事件live了多个函数的时候,解除一个函数对其他函数没影响。

    9、delegate() 为指定的元素添加一个或多个事件,并绑定处理函数,一个事件也可以绑定多个函数。注意:此函数要1.4.2版添加。delegate()允许在父元素中将时间绑定当前页面还未的元素,这点与Live()类似,但是即使是$(document).delegate()也比live()方法的效率要高,另外delegate()还能将尚未出现的元素绑定到离它更近的父元素上。

      语法:

      delegate(selector,[type],fn)    String String Function  //selector必须为所选元素的子元素

      delegate(selector,[type],[data],fn)  String String Object Function

      delegate(selector,events)      String String

      如:

      $('#container').delegate('a', 'click', function() { alert("你好!") }); 
      JQuery扫描文档查找$(‘#container’),并使用click事件和’a’这一CSS选择器作为参数把alert函数绑定到$(‘#container’)上。任何时候只要有事件冒泡到$(‘#container’)上,它就查看该事件是否是click事件,以及该事件的目标元素是否与CCS选择器相匹配。如果两种检查的结果都为真的话,它就执行函数。

      $("#div1").delegate("#button1","click",function(){ alert("你好啊!"); });  //注意:#button1必须为#div1的子元素

    10、undelegate()  删除有delegate()函数绑定的一个或多个事件处理函数

      语法:

      undelegate(selector,[type])    String String

      undelegate(selector,[type],fn)    String String Function

      undelegate(selector,events)    String String

      undelegate(namespace)      String

     11、ready()  当DOM元素加载完成后绑定处理事件

      $(document).ready()

jQuery之事件的更多相关文章

  1. Jquery的事件操作和文档操作

    对于熟悉前端开发的小伙伴,相信对于Jquery一定不陌生,相对于JavaScript的繁琐,Jquery更加的简洁,当然简洁不意味着简单,我们可以使用Jquery完成我们想要实现全部功能,这里为小白们 ...

  2. 深入学习jQuery鼠标事件

    × 目录 [1]类型 [2]写法 [3]合成事件[4]鼠标按键[5]修改键[6]坐标位置 前面的话 鼠标事件是DOM事件中最常用的事件,jQuery对鼠标事件进行了封装和扩展.本文将详细介绍jQuer ...

  3. 从零开始学习jQuery (五) 事件与事件对象

    本系列文章导航 从零开始学习jQuery (五) 事件与事件对象 一.摘要 事件是脚本编程的灵魂. 所以本章内容也是jQuery学习的重点. 本文将对jQuery中的事件处理以及事件对象进行详细的讲解 ...

  4. jquery的事件命名空间详解

    jquery现在的事件API:on,off,trigger支持带命名空间的事件,当事件有了命名空间,就可以有效地管理同一事件的不同监听器,在定义组件的时候,能够避免同一元素应用到不同组件时,同一事件类 ...

  5. jquery css事件编程 尺寸设置

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. jquery css事件编程 位置 操作

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 不写完不让回家的JQuery的事件与动画

    在这看不见太阳的小黑屋里,苦逼的一天又开始了 好了闲话我也就不扯了,接下来我就来说说我对jQuery事件和动画的理解吧!!! 还是得再扯两句,我们敬爱的,Y老师讲完了,jQuery事件和动画,对着我们 ...

  8. jQuery scroll事件实现监控滚动条分页示例(转)

    这篇文章主要介绍了jQuery scroll事件实现监控滚动条分页简单示例,使用ajax加载,同时介绍了(document).height()与$(window).height()的区别,需要的朋友可 ...

  9. jquery双击事件

    <html> <head><meta http-equiv="Content-Type" content="text/html; chars ...

  10. js 事件冒泡是什么如何用jquery阻止事件冒泡

    什么是事件起泡:一个事件不能凭空产生,这就是事件的发生等等,接下来为大家介绍下jquery阻止事件起泡以及关于js事件起泡的验证,感兴趣的朋友可以参考下哈       (1)什么是事件起泡 首先你要明 ...

随机推荐

  1. libusb-win32 在visual studio2008中成功编译回忆录

    关于这个项目不用多说 介绍 libusb是一个针对usb通讯的库. 使用它, 你不需要知道操作系统的细节, 你只需要对USB有足够的了解即可. 它也不需要你写驱动, 所有的工作都可以在用户态完成. 使 ...

  2. linux svn用法

    创建一个版本库.项目目录. 创建一个版本库: svnadmin create ~/SVNTestRepo 创建一个项目目录: svn mkdir file:///home/lsf/SVNTestRep ...

  3. Linux 挂载光驱

    Linux的硬件设备都在/dev目录下,/dev/cdrom表示光驱,挂载方法如下: 1.挂载光驱 [root@oracle ~]# mount -t iso9660 /dev/cdrom /mnt/ ...

  4. 【HDU2795】Billboard(线段树)

    大意:给一个h*w的格子,然后给出多个1*w的板子往格子里面填,如果有空间尽量往上一行填满,输出行数,无法填补,则输出-1: 可以使用线段树转化问题,将每一排的格子数目放到每一个叶子节点上,然后每有一 ...

  5. HDU 4287 (13.08.17)

    Problem Description We all use cell phone today. And we must be familiar with the intelligent Englis ...

  6. HTML基础知识笔记(一)

    HTML定义 HTML指的是超文本标记语言 HTML不是编程语言,而是标记语言 标记语言是一套标记标签 HTML是用标记标签来描述网页   HTML标签1 <html></html& ...

  7. <modules runAllManagedModulesForAllRequests="true" />(转1)

    最近在使用 MVC 开发的时候,遇到一个对我来说“奇怪的问题”,就是使用 BundleTable 进行 CSS.JS 文件绑定,然后使用 Styles.Render.Scripts.Render 进行 ...

  8. js Range

    http://www.zhangxinxu.com/wordpress/2011/04/js-range-html%E6%96%87%E6%A1%A3%E6%96%87%E5%AD%97%E5%86% ...

  9. 截取NSString字符串

    NSString类中提供了这样三个方法用于获取子字符串: – substringFromIndex: – substringWithRange: – substringToIndex: 具体的使用见下 ...

  10. jquery动态添加DOM节点

    1.append()方法:向每个匹配的元素内部添加元素 appendTo()方法:将所有匹配的元素追加的指定的元素中 <html> <head> <meta http-e ...