jquery

1.事件函数列表: blur() 元素失去焦点

focus() 元素获得焦点

change() 表单元素的值发生变化

click() 鼠标单击

dblclick() 鼠标双击

mouseover() 鼠标进入(进入子元素也触发)

mouseout() 鼠标离开(离开子元素也触发)

mouseenter() 鼠标进入(进入子元素不触发)

mouseleave() 鼠标离开(离开子元素不触发)

hover() 同时为mouseenter和mouseleave事件指定处理函数

mouseup() 松开鼠标

mousedown() 按下鼠标

mousemove() 鼠标在元素内部移动

keydown() 按下键盘

keypress() 按下键盘

keyup() 松开键盘

load() 元素加载完毕

ready() DOM加载完成

resize() 浏览器窗口的大小发生改变

scroll() 滚动条的位置发生变化

select() 用户选中文本框中的内容

submit() 用户递交表单

toggle() 根据鼠标点击的次数,依次运行多个函数

unload() 用户离开页面

2.绑定事件的其他方式

 $(function(){

    $('#div1').bind('mouseover click', function(event) {

        alert($(this).html());

    });

});

3.取消绑定事件

$(function(){

    $('#div1').bind('mouseover click', function(event) {

        alert($(this).html());

        // $(this).unbind();

        $(this).unbind('mouseover');

    });

});

4.主动触发

可使用jquery对象上的trigger方法来触发对象上绑定的事件。

5.自定义事件

除了系统事件外,可以通过bind方法自定义事件,然后用trigger方法触发这些事件。

//给element绑定hello事件

element.bind("hello",function(){

    alert("hello world!");

});

//触发hello事件

element.trigger("hello");

6.事件冒泡: 事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件

阻止事件冒泡

事件冒泡机制有时候是不需要的,需要阻止掉,通过 event.stopPropagation() 来阻止

阻止右键菜单

$(document).contextmenu(function(event) {

    event.preventDefault();

});

合并阻止操作

实际开发中,一般把阻止冒泡和阻止默认行为合并起来写,合并写法可以用

7.事件委托

$(function(){

    $list = $('#list');

    $list.delegate('li', 'click', function(event) {

        $(this).css({background:'red'});

    });

})

...

       

  • 1
  •    

  • 2
  •    

  • 3
  •    

  • 4
  •    

  • 5

取消事件委托

// ev.delegateTarge 委托对象

$(ev.delegateTarge).undelegate();

// 上面的例子可使用 $list.undelegate();

你可能感兴趣的:(jquery)