在我正在构建的站点的首页上,有几个<div>使用 CSS:hover伪类在鼠标悬停在它们上方时添加边框。其中一个<div>s 包含 a <form>,如果其中的输入具有焦点,则使用 jQuery 将保留边框。除了 IE6 不支持s:hover以外<a>的任何元素,这完美地工作。所以,对于这个浏览器,我们只使用 jQuery 来模拟 CSS:hover使用该$(#element).hover()方法。唯一的问题是,现在 jQuery 处理表单focus() 和 hover(),当输入具有焦点时,用户将鼠标移入移出,边框消失。
我在想我们可以使用某种条件来阻止这种行为。例如,如果我们测试鼠标移出是否有任何输入具有焦点,我们可以阻止边框消失。AFAIK,:focusjQuery 中没有选择器,所以我不确定如何实现。有任何想法吗?