我有一个输入,其中有一个自定义下拉列表部分显示用户输入的结果。此下拉列表仅显示输入何时具有焦点,以便如果用户单击远离输入,则下拉列表将消失。
当用户在移动iOS设备上时,键盘占据屏幕的一半。我们希望用户键入(显示下拉列表建议),然后隐藏键盘以便他们可以滚动查看结果。问题是当键盘被隐藏时,焦点会丢失,因此下拉列表会消失。
这可以检测键盘何时关闭:
document.addEventListener('focusout', function(e) { //Do something });
问题是当用户点击输入字段时,此事件也会触发。有没有办法告诉这个事件来自键盘隐藏而不是任何其他事件?我认为最好的方法可能是实现类似的东西:
function hideDropdown() {
If keyboard was just hidden
return
else
proceed to hide dropdown
}