点击事件不触发警报

时间:2013-06-19 18:43:29

标签: javascript jquery

我正试图点击.ss-result ainput模糊时触发此提醒。当这两件事都发生时。

在输入焦点时,会出现锚点。然后,当单击锚点时,应该注册点击事件,并且由于焦点取决于输入,因此应该注册输入上的模糊。

那么,为什么这个警报不会运行呢。

点击后,焦点不是转移到.ss-result a吗?因此,当点击锚点时,警报应该触发,对吗?

我要做的是知道input上何时发生模糊事件,以及焦点是否因为点击而转移到.ss-result a。如何在该事件中运行javascript,在这种情况下是警报?

这是我的代码:

$('.ss-result').fadeOut();

$('input').focus(function(){
    $('.ss-result').fadeIn();
});
var inputObj = $('input');
var boxObj = $('.ss-result');
inputObj.blur(function() {
    if($('.ss-result a').is(':focus')){
        alert("clicked!");
}
else{
    boxObj.fadeOut(100);
}
});

这里有一个JS FIDDLE,您可以尝试一下:http://jsfiddle.net/CtcB8/

1 个答案:

答案 0 :(得分:1)

它不能同时存在,所以你可以做到

inputObj.blur(function() {
        alert("clicked!");
});

并回复点击事件。

编辑:感谢@Igor指出不必要的位。