多个相同class节点绑定同一事件
案例:
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
<div id="div1">内容</div>
问题:
$("#div1").bind("click",function(){
alert($(this).val());
});
我们绑定到了div1,当我们点击div时,只有第一个div 弹出了alert了,其它的都没有弹出。
目标:
想了每一个div都绑定一个事件
解决:
$("div1").live("click",function(){
alert($(this).val());
})
以下绑定事件方法的区别:
bind:为每个匹配元素的特定事件绑定事件处理函数;
live:jQuery 给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的也有效;
jQuery1.9.1版本用on代替live,通用
再爱,代码也不能是生活的全部。每天看书-每天运动-每天关注健康-每天了解时尚-每天进步一点点。