JQuery live函数

 更新时间:2010年12月24日 22:31:24   作者:  
给指定id或class的元素绑定(bind)事件时,对于改变或新加的元素,事件不会起作用,这时我们就要用live函数,它可以让子元素继承父元素的事件。

摘自 jQuery 1.4.1 中文参考:

事件委托

.live() 方法能对一个还没有添加进DOM的元素有效,是由于使用了事件委托:绑定在祖先元素上的事件处理函数可以对在后代上触发的事件作出回应。传递给 .live() 的事件处理函数不会绑定在元素上,而是把他作为一个特殊的事件处理函数,绑定在 DOM 树的根节点上。在我们的例子中,当点击新的元素后,会依次发生下列步骤:

  1. 生成一个click事件传递给 <div> 来处理
  2. 由于没有事件处理函数直接绑定在 <div> 上,所以事件冒泡到DOM树上
  3. 事件不断冒泡一直到DOM树的根节点,默认情况下上面绑定了这个特殊的事件处理函数。
  4. 执行由 .live() 绑定的特殊的 click 事件处理函数。
  5. 这个事件处理函数首先检测事件对象的 target 来确定是不是需要继续。这个测试是通过检测 $(event.target).closest('.clickme') 能否找到匹配的元素来实现的。
  6. 如果找到了匹配的元素,那么调用原始的事件处理函数。

由于只有在事件发生时才会在上面的第五步里做测试,因此在任何时候添加的元素都能够响应这个事件

相关文章

  • jquery 无限级下拉菜单的简单实现代码

    jquery 无限级下拉菜单的简单实现代码

    本篇文章主要是对jquery 无限级下拉菜单的简单实现代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02
  • jQuery实现可以扩展的日历

    jQuery实现可以扩展的日历

    这篇文章主要为大家详细介绍了jQuery实现可以扩展的日历,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • jquery 1.4.2发布!主要是性能与API

    jquery 1.4.2发布!主要是性能与API

    没想到jquery这次居然更新这么快,jquery1.4的教程我还没有发二周,jquery1.4.2就发布了。这次jquery1.4.2更新的内容主要是性能和新增了一些新的API。
    2010-02-02
  • JQUERY THICKBOX弹出层插件

    JQUERY THICKBOX弹出层插件

    JQUERY插件THICKBOX的功能很强大,但是它的基本使用却很简单容易.但是要研究的更深,运用得更加灵活的话,还是有点难度,根据其官方站点介绍
    2008-08-08
  • 喜大普奔!jQuery发布 3.0 最终版

    喜大普奔!jQuery发布 3.0 最终版

    jQuery发布已经十年了,挺让人难以置信。过去的这些年Web开发变了很多,jQuery也随之变化着。在这个过程中,团队一直在对确保过往代码的兼容支持和获取最好的Web开发实践的现实之间努力着。就在2天前,jQuery发布了新的3.0最终版本
    2016-06-06
  • 使用JQ完成表格隔行换色的简单实例

    使用JQ完成表格隔行换色的简单实例

    下面小编就为大家带来一篇使用JQ完成表格隔行换色的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • jquery根据一个值来选中select下的option实例代码

    jquery根据一个值来选中select下的option实例代码

    下面小编就为大家带来一篇jquery根据一个值来选中select下的option实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 解决3.01版的jquery.form.js中文乱码问题的解决方法

    解决3.01版的jquery.form.js中文乱码问题的解决方法

    最近用到了jquery的一个fom插件,是一个全面支持表单的jQuery插件。昨天在用ajaxSubmit进行Form Post提交的时候,发现服务器端取回的中文数据居然是乱码。这个可能是因为jquery是utf-8,不支持gb2312
    2012-03-03
  • 简单的jquery拖拽排序效果实现代码

    简单的jquery拖拽排序效果实现代码

    写了简单的跟随鼠标移动效果。这个拖拽排序的效果的区别在于: 运用了插入insertBefore 和 insertAfter 的方法
    2011-09-09
  • 基于jQuery实现一个marquee无缝滚动的插件

    基于jQuery实现一个marquee无缝滚动的插件

    这篇文章主要介绍了基于jQuery实现一个marquee无缝滚动的插件,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03

最新评论