0

我有一个 div 元素,其中包含一个小表单和一个 dhtmlx 数据网格。这个 div 很少使用,所以我使用 jQuery 的 slideUp 在不需要时将其隐藏起来。我在 div 上附加了 mouseenter 和 mouseleave 事件来设置和取消 slideUp - 这样当鼠标在 div 上时它不会消失。

但是,当用户单击表单元素或数据网格之一,然后将鼠标移开时,我的问题就出现了。显然用户仍然需要 div 可见,但是 mouseleave 事件会导致 div 向上滑动!

jQuery 中是否有测试 div 中的任何元素是否具有焦点?然后,如果确实有焦点,我可以取消 slideUp 调用。

4

1 回答 1

1

查看从 jQuery 1.6+ 添加的 focus 属性

如果要查找具有焦点的输入,请使用以下命令:

if( $("#mydiv input:focus").length > 0 ) {}
于 2011-11-19T11:00:03.987 回答