gpt4 book ai didi

jquery mobile 在键盘时隐藏固定页脚

转载 作者:行者123 更新时间:2023-12-03 22:20:51 24 4
gpt4 key购买 nike

在我的 iPhone 上,我希望在按下文本字段并出现键盘时隐藏页脚。现在它只是将自己定位在键盘上方,并且显示的网站太少。

<div data-role="footer" data-id="foo1" data-position="fixed">
<div data-role="navbar">
<div data-role="controlgroup" data-type="vertical">
<ul><li><input data-iconpos="top" data-icon='plus' type="button" value="Tur" id='nyTur' /></li>
<li><input data-iconpos="top" data-icon='plus' type="button" value="48%" id='ny48' /></li>
<li><input data-iconpos="top" data-icon='plus' type="button" value="100%" id='ny100' /></li>
</ul>
</div>
</div><!-- /navbar -->
</div><!-- /footer -->

最佳答案

这是一个很难“正确”解决的问题。您可以尝试在输入元素焦点上隐藏页脚,并在模糊时显示页脚,但这在 iOS 上并不总是可靠。每隔一段时间(例如,在我的 iPhone 4S 上,十分之一)焦点事件似乎无法触发(或者 JQuery Mobile 可能存在竞争条件),并且页脚不会被隐藏。

经过多次尝试和错误,我想出了这个有趣的解决方案:

<head>
...various JS and CSS imports...
<script type="text/javascript">
document.write( '<style>#footer{visibility:hidden}@media(min-height:' + ($( window ).height() - 10) + 'px){#footer{visibility:visible}}</style>' );
</script>
</head>

本质上:使用 JavaScript 确定设备的窗口高度,然后动态创建 CSS 媒体查询,以在窗口高度缩小 10 像素时隐藏页脚。因为打开键盘会调整浏览器显示的大小,所以这在 iOS 上永远不会失败。因为它使用 CSS 引擎而不是 JavaScript,所以速度更快、更流畅!

注意:我发现使用“visibility:hidden”比“display:none”或“position:static”的故障更少,但您的情况可能会有所不同。

关于jquery mobile 在键盘时隐藏固定页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20069352/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com