没有回应事件?

时间:2010-05-25 16:52:41

标签: javascript jquery

我目前有三个Div,在给定时间内只有一个是焦点。所有这些都以电影胶片的方式排列。当我单击未对焦的DIV时,当前的DIV向左或向右移动(取决于方向)并且新的DIV会聚焦。

div可以包含具有链接的内容。所以我的问题是,点击不在焦点的div,如果我碰巧点击链接,就会捕获事件。无论如何我可以禁用无法聚焦的div的事件检测吗?

我正在寻找的是:

if(div not in focus)
 disable all links
if (div comes into focus)
 enable all links

3 个答案:

答案 0 :(得分:2)

假设有效<div>的类别为Active,您可以这样做:

$('.Container div:not(.Active) a').live('click', function(e) {
    return false;
});

答案 1 :(得分:1)

在您的事件处理程序中,使用

if (event.target.tagName == "a") // where `event` is the 1st argument passed 
    event.preventDefault();      // to the handler

如果单击链接并仍然允许div移动到焦点,这将阻止默认操作。

答案 2 :(得分:1)

听起来像选择器问题。你不能给那些div独特的id或类来单独绑定点击事件吗?