The release shown below is not the last. Please check 1.0.3 instead.
This plugin brings a clean, light solution, to websites with dynamic loaded content, or full of event bindings.
Intead of bound, handlers for events, are registered along with matching selectors.
And they'll still work for new added content.
This is achieved, using Event delegation, so the plugin will only work for events that bubble.
Update: jQuery.Listen can now handle both focus and blur events thanks to the focusin/focusout workaround.
Many thanks to Jörn Zaefferer for lending me the code!.
The plugin supports these kind of selectors:
- #id
- nodeName
- .class
- nodeName.class
- a comma-separated selector combining these 4.
I plan to add more support, but perfomance and scalability are my priorities. These simple selectors give enough functionality for many cases.
If, for example, you want tables, to react to clicks on it's rows, then you can do this:
jQuery('table').listen( 'click', 'tr', function(){
alert('you clicked a row!!');
});
No matter how many times you add/remove rows, they will still be clickable.
You can also do this:
jQuery.listen( 'click', 'tr', function(){
alert('you clicked a row!!');
});
This time, the listener will be the document. So now you can add/remove tables as well, clicking the rows will still trigger the handler.
If you need full support for selectors, and you mind sacrificing a little of scalability, you can check http://plugins.jquery.com/project/Intercept for a similar solution.
本文中的JavaScript事件是指:在浏览器中,DOM标准提供的JavaScript事件集与接口集。 在项目开发中通常会使用类似jQuery的工具来绑定事件处理函数, 也可以设置捕获,或者中断事件流,正如这篇文章锁讨论的: jQuery事件:bind、delegate、on的行为与性能。 本文来讨论DOM标准中是如何规定这些JavaScript事件的,以及jQuery源码中DOM事件的实现方式。
在今天的文章中,我将向您介绍 Web 开发人员使用的 jQuery 中流行的特性,以及如何使用原生 JavaScript 的原生函数来完成这些任务。 1、文档准备就绪 Document ready 是一个事件,表明页面的 DOM 已经完全准备好,因此,我们可以处理它而不必担心 DOM 的某些部分是否尚未加载。此事件在任何图像或视频渲染到网站之前,但在整个 DOM 准备好之后触发。 请参阅以下代码片
你是否经历过这样的场景,坐在电脑前,打开网页,看到吸引人的图片,我们兴冲冲的点了进去,一看究竟。 进去后我们大呼上当,“什么破玩意儿啊”,接下来你会怎么做? 关闭网页?又或者是点击“后退”?如果你是“后退综合症”患者,点一下后退,不动,再点一下,又不动,~!@#$%^ 果断关毕这个网页~~ 如果我是开发者,我有一个非常多页面的网站,为了不让页面重载,我用Ajax加载这些页面。 但是连我这样的小白都
1.事件 1.1添加事件 一般添加事件 $().事件名(function(){ 函数体 }) 事件监听 $().on(evebtType,[selector], [data], callback) evenType:事件类型 如 click (类似addlistener) selector:可选参数,用于事件委托 data:可选,传递参数 callback: 事件触发后执行的回调函数 绑定多个事件
jquery 添加事件 Earlier this week I posted a usability tip about using CSS and MooTools' custom event functionality to automatically add the "pointer" cursor when an element gets a "click" event attached
jQuery发送Ajax请求小示例 前端发送: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <s
// 1. 如果事件是通过on的方式注册的,如何移除? // div.onclikc = null; // 2. 如果通过addEventListener注册的事件,如何移除? // removeEventListener('事件类型', 命名函数) // jQ中移除事件的方式 // 语法: jQ对象.off('事件类型') // 代码演示: