一、含义不同
1、$("div").live("click",function(){}):法为被选元素附加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。
2、$("div").click(function(){}):当点击元素时,会发生 click 事件。
二、特点不同
1、$("div").live("click",function(){}):方法附加的事件处理程序适用于匹配选择器的当前及未来的元素(比如由脚本创建的新元素)。
2、$("div").click(function(){}):当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click。
三、规定不同
1、$("div").live("click",function(){}):规定附加到元素的一个或多个事件。由空格分隔多个事件。必须是有效的事件。
2、$("div").click(function(){}):click() 方法触发 click 事件,或规定当发生 click 事件时运行的函数。
参考资料来源:jquery官网-live
参考资料来源:jquery官网-click
live 是绑定事件 举个例子 比如我用jquery 直接加载了一段html代码
原html 为
使用live,可以获得事件委托的很多好处。
例如:
$('div').live("click",function(){
var targetId = event.target.id;
if(targetId == "myId"){
//当当前目标id为指定名字的话,可做适当处理。。
}
//可以有更多判断
})
在后台,jQuery会把单击处理程序绑定到document对象上,并检查event.target(或其祖先元素)是否与传入的选择符表达式(也就是这里的'div')匹配。如果匹配,jQuery会把this关键字映射到匹配的元素。这样能够避免把事件绑定到多个元素。而且,由于document对象本身在文档刚加载时就可用,甚至能够在
通过ajax加载过来的html是不会继承原来的事件的,比如li原来添加了click,新加进来的则点击没反映,这个时候就需要用live来重新绑定!