Javascript 选择除。。。在jQuery中

Javascript 选择除。。。在jQuery中,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,我正在做一个项目,包括一个智能搜索引擎 我想写一个方法,让客户端在smartsearch中编写,即使它没有重点。例如,浏览网站时,客户端按下一个键,然后焦点跳转到smartsearch 这可以很好地处理以下简单代码: $(document).ready(function() { $("*").keydown( function() { $("input.ss-24#b").focus(); }); }); 但是,正如你所看到的,它也不关注其他的输入,这不是我想要的方式。 我

我正在做一个项目,包括一个智能搜索引擎

我想写一个方法,让客户端在smartsearch中编写,即使它没有重点。例如,浏览网站时,客户端按下一个键,然后焦点跳转到smartsearch

这可以很好地处理以下简单代码:

$(document).ready(function()
{   
 $("*").keydown( function()
 { 
   $("input.ss-24#b").focus();
 });
});
但是,正如你所看到的,它也不关注其他的输入,这不是我想要的方式。 我尝试过几种“可能的解决方案”,如:not(),甚至。not()方法,如:

$(document).ready(function()
{   
 $("*").not("input").keydown( function()
 { 
  $("input.ss-24#b").focus();
 });
});
但它仍然将带有“输入”标记名的字段取消聚焦。我应该如何强制jQuery为此事件侦听器选择输入字段

谢谢,史蒂文

 $(document).ready(function () {
     $(document).keydown(function (e) {
    $("input.ss-24#b").focus();
    });
});
这行吗


您的输入元素在其他元素中,例如
,它们将在冒泡事件中触发。我有一种直觉,即
$(文档)。按键(函数(){$('.'b')。焦点()})
应该足够了。是的,布莱恩,您是对的。我很确定这个问题与这一点有关,@zzzzBov。当然,谢谢,但这是如何解决这个问题的呢?他可能忘了加上e.stopPropagation或immediatePropagation:)
$(document).keydown(function() {
        if (!$('input').filter(':focus').length) {

             $('#b').focus();

        }    
});