1

例如:打开这个简单的 jsfiddle并像这样放置您的窗口:这:然后将光标放在 jsfiddle 红色区域上使其变为:hover(绿色),现在将光标移动到另一个窗口。区域仍然绿色!如何避免它?

4

2 回答 2

3

您必须单击新窗口才能使悬停元素失去焦点。即使您将鼠标悬停在不同的窗口上,jsFiddle 窗口仍然具有焦点。在您单击新窗口之前,窗口焦点不会改变。

于 2012-08-15T13:50:42.277 回答
0

我认为您不能明确删除:悬停。您可以做的是更改您的 css 以要求一些具有类的外部容器,然后在窗口失去焦点时将其删除:

JS

$(window).focus(function () {
    $("#outer").addClass('focusedContainer');
});
$(window).blur(function () {
    $("#outer").removeClass('focusedContainer'); 
});​

CSS

.button{
    background: red;
}
.focusedContainer>.button:hover{
    background: green;
}

小提琴: http: //jsfiddle.net/johnkoer/932Km/11/ ​</p>

于 2012-08-15T14:01:49.627 回答