jQuery检测div内部的点击

时间:2012-10-09 13:34:27

标签: jquery

我正在尝试使用jQuery来检测用户何时在页面上的div中单击。应该很容易,但它不起作用。

以下是我的代码摘要(在HTML中):

<div class="outerDiv">
    <object id="video">
      ...
     </object>
</div>

在jQuery中:

$("body").on("click",function(e){
if(e.target.id=="outerDiv") {
   ... do something
}           
if(e.target.id=="video") {
    alert("Inside div");
}
 ...

});

但是,当点击id为“video”的对象内部时,没有任何反应。但是,如果我在“outerDiv”中单击,则会被代码选中。

是否可以在“视频”ID中查看我有一个对象(在这种情况下是一个内置的Flash视频播放器)?

我做错了什么?

干杯:)。

2 个答案:

答案 0 :(得分:3)

为什么不通过在'on'调用中添加另一个参数来定位特定的div?

$("body").on("click", "#flash_holder", function(e) {
   alert("clicked on flash_holder");
});

如果您只定位单个元素,则可能根本不需要使用委派:

$("#flash_holder").click(function(e) {
   alert("clicked on flash_holder");
});

答案 1 :(得分:2)

显然,内部点击事件由Flash处理。除非您手动在SWF文件中实现,否则此类点击不会传播到您的DOM元素。