我正试图点击.ss-result a
和input
模糊时触发此提醒。当这两件事都发生时。
在输入焦点时,会出现锚点。然后,当单击锚点时,应该注册点击事件,并且由于焦点取决于输入,因此应该注册输入上的模糊。
那么,为什么这个警报不会运行呢。
点击后,焦点不是转移到.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/
答案 0 :(得分:1)
它不能同时存在,所以你可以做到
inputObj.blur(function() {
alert("clicked!");
});
并回复点击事件。
编辑:感谢@Igor指出不必要的位。