我正在使用
$(document).bind('click','.q',function(e){console.dir(e.target);});
我的HTML就是这样:
<div class="b"style="width:1000px;height:1000px">
<div class="q"style="width:10px;height:10px"></div>
<div class="q"style="width:10px;height:10px"></div>
more .q added later...
</div>
但是当我点击.b上的任何地方(在附加.q之前)我得到我的控制台给我e.target .b的目录
为什么吗
我正在使用此代码,因为现在删除了live()。
所以我的代码就是
$('.q').live('click',function(e){console.dir(e.target);});
答案 0 :(得分:3)
bind
不支持委托事件,因此您的第二个参数是eventData
您应该使用on
代替bind
:
// Not document for better performance.
$('div.b').on('click','.q', function(e){console.dir(e.target);});
您可以使用eventData
访问e.data
参数,如果您进行控制,则会在控制台中看到".q"
。
答案 1 :(得分:1)