Jquery 为什么单击主体后会清除焦点

Jquery 为什么单击主体后会清除焦点,jquery,twitter-bootstrap,focus,blur,Jquery,Twitter Bootstrap,Focus,Blur,我正在我的应用程序中使用bootstrap、less和jQuery。我想问你元素的焦点 因此,我有一个使用ulli锚创建的项目列表。我已经做了一个代码,使锚的颜色点击,并清除模糊的颜色。 问题是当用户点击身体上的任何地方时,锚的焦点被他自己清除了 你知道它背后的问题是什么吗?这是预期的行为。但如果出于某种原因,在非聚焦元素上单击body上的任意位置时,您希望保持聚焦元素,则可以使用以下代码段: //如果尚未包含jQuery UI,则包含IIFE (功能(){ 函数可聚焦(元素,isTabInd

我正在我的应用程序中使用bootstrap、less和jQuery。我想问你元素的焦点

因此,我有一个使用
ul
li
锚创建的项目列表。我已经做了一个代码,使锚的颜色点击,并清除模糊的颜色。 问题是当用户点击身体上的任何地方时,锚的焦点被他自己清除了


你知道它背后的问题是什么吗?

这是预期的行为。但如果出于某种原因,在非聚焦元素上单击
body
上的任意位置时,您希望保持聚焦元素,则可以使用以下代码段:

//如果尚未包含jQuery UI,则包含IIFE
(功能(){
函数可聚焦(元素,isTabIndexNotNaN){
变量映射,映射名,img,
nodeName=element.nodeName.toLowerCase();
如果(“区域”==节点名称){
map=element.parentNode;
mapName=map.name;
如果(!element.href | | | | mapName | map.nodeName.toLowerCase()!=“map”){
返回false;
}
img=$([img[usemap='#“+mapName+'])[0];
return!!img&&$(img).is(':visible');
}
返回(/^(输入|选择|文本区域|按钮|对象)$/.test(节点名称)?!element.disabled:
“a”==nodeName?element.href | | isTabIndexNotNaN:isTabIndexNotNaN)&&
//元素及其所有祖先必须可见
$(元素).is(':visible');
}
$.extend($.expr[“:”]{
聚焦:功能(元素){
返回可聚焦(元素,!isNaN($.attr(元素,tabindex));
}
});
})();
$(':focusable')。在('blur',函数(e)上{
//使用超时将逻辑放入事件队列
setTimeout(函数(){
if(!$(document.activeElement).is(':focusable'))this.focus();
}.bind(this),0);
});
/*仅供演示之用*/
a:焦点{
颜色:红色;
大纲:0;
}


不带href的锚点(不可聚焦)
不带索引的div(不可聚焦) 带tabindex的div(可聚焦)
tabindex为负值的div(可聚焦但不可绑定)
但据我所知,这是预期的行为。你能提供一个简单的例子来复制你的问题吗?你一直用“专注”这个词-我不认为它意味着你认为它意味着什么。。。