【发布时间】:2011-08-19 05:41:33
【问题描述】:
我正在实现一个 AJAX“自动建议”框:用户在输入文本字段中键入一个字符串,显示一个带有表格的隐藏 div,然后他/她可以单击一行或向上滚动列表/向下箭头;同时,焦点仍保持在输入文本字段上。
一切正常,但有一个细节我无法实现,这在概念上似乎很困难,甚至是不可能的。当用户将光标移动到另一个输入字段或只是单击窗口的空白点时,我想隐藏建议列表。这本身不难实现,我只是加了一个回调OnBlur;但这会破坏项目 OnClick 的选择,因为 onblur 事件在点击之前触发,然后 DIV 在 onclick 事件被触发之前消失... p>
我想过在整个窗口上实现一个 onclick 回调,然后检查点击发生的位置,但这似乎有点太尴尬和扭曲。有人有更好的主意吗?谢谢!
【问题讨论】:
-
你有没有想过这个问题?我现在遇到了这个问题,无法找到一个好的解决方案来允许 onBlur 在不破坏清除或鼠标单击选择的情况下触发......
-
谁能回答这个问题,我也有同样的问题。
-
当“自动建议”框被
blur事件隐藏时,我使用了一个技巧,即添加setTimeout。 但是这个技巧有active自动提示框元素的问题。
标签: ajax autocomplete onblur