Javascript JS位置固定和Android/iOS差异

Javascript JS位置固定和Android/iOS差异,javascript,android,ios,android-softkeyboard,mobile-browser,Javascript,Android,Ios,Android Softkeyboard,Mobile Browser,最近,我正在开发一个移动webapp,它有一个大的文本区域,需要在视口的下角不断显示两个小按钮。所以我从基础开始: position: fixed; bottom: 10px; 这在我的目标设备iOS>=5、Android>=2.3上运行平稳,外观美观。然而,当我给我的大文本区域一个焦点,系统键盘出现时,问题就开始了 在iOS浏览器中,键盘只是视口上的一个覆盖层——因此,在键盘打开后,视口会保持其尺寸,而键盘的一半则隐藏在其下方 在大多数android设备中,键盘的外观使视口的高度更小,并适合

最近,我正在开发一个移动webapp,它有一个大的文本区域,需要在视口的下角不断显示两个小按钮。所以我从基础开始:

position: fixed;
bottom: 10px;
这在我的目标设备iOS>=5、Android>=2.3上运行平稳,外观美观。然而,当我给我的大文本区域一个焦点,系统键盘出现时,问题就开始了

在iOS浏览器中,键盘只是视口上的一个覆盖层——因此,在键盘打开后,视口会保持其尺寸,而键盘的一半则隐藏在其下方

在大多数android设备中,键盘的外观使视口的高度更小,并适合剩余区域,因此我的位置固定在这里工作。然而,一些安卓设备的工作原理与iOS一样,键盘显示为覆盖层

我正试图想出最好的方法来解决这个问题,而不是使用用户代理字符串。我希望这是一个普遍的解决办法。我想出了类似的办法

//check the viewport height
on(focus) -> see if viewport size changed and change position: fixed
但要做到这一点,我仍然需要在对焦后等待几秒钟,让窗口调整大小与否+如果视口保持不变,我真的不知道在哪里放置按钮,因为我可能在键盘大小不同的任何iOS系统上,或者在行为不好的安卓设备上

你觉得怎么样