我正在开发一个网站的移动版本,我有一个 jQuery UI 对话框,其大小为屏幕宽度和高度的 100%,其中包含文本输入和文本区域。当用户按下输入时,它被选中并且手机向上推动对话框以显示键盘。问题是当用户按下输入(取消选择它)时,手机的键盘消失了,对话框仍然“向上推”。所以,我需要做的是在键盘滑回后垂直居中对话框。
我可以将事件处理程序添加到在取消选择时运行的输入,但我不确定如何垂直居中对话框。
我怎样才能做到这一点?
我正在开发一个网站的移动版本,我有一个 jQuery UI 对话框,其大小为屏幕宽度和高度的 100%,其中包含文本输入和文本区域。当用户按下输入时,它被选中并且手机向上推动对话框以显示键盘。问题是当用户按下输入(取消选择它)时,手机的键盘消失了,对话框仍然“向上推”。所以,我需要做的是在键盘滑回后垂直居中对话框。
我可以将事件处理程序添加到在取消选择时运行的输入,但我不确定如何垂直居中对话框。
我怎样才能做到这一点?
在询问之前我应该做更多的搜索,因为我只是在这里偶然发现了解决方案:https ://stackoverflow.com/a/3060895/1101095
我将把问题留在这里,以防它对遇到同样问题的人有所帮助。这是处理程序中上述解决方案的代码.blur()
:
$("input, textarea").blur(function() {
$(".ui-dialog-content").dialog("option", "position", "center"); // resize the (technically all) dialog
});
这解决了问题!