

.delegate() 指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。 
 代码如下: 
// jQuery 1.4.3+ 
$( elements ).delegate( selector, events, data, handler ); 
// jQuery 1.7+ 
$( elements ).on( events, [selector], data, handler ); 
 
例如:.delegate() code: 
 代码如下: 
$("table").delegate("td","click",function(){ 
alert("hello"); 
}); 
 
.on() code: 
 代码如下: 
$("table").on("click", "td", function() { 
alert("hi"); 
}); 
 
PS: 两者区别是seleter和events顺序不同 
delegate和on方法被选元素的子元素必须是"合法的"子元素。比如 
 代码如下: 
$("table").delegate("button","click",function(){...}); 
$("table").on("click", "p", function(){...}); 
 
就不起作用,因为正常情况下,table子元素应为tr,td... 
on(events,[selector],[data],fn),参数[selector]是可选, 
一个选择器字符串用于过滤器的触发事件的选择器元素的后代。 
例如: 
 代码如下: 
$("table").on("click", ".td1", function() { 
alert("hi"); 
}); 
 
过滤class为td1的table子元素 
而delegate的selector是必需的。
