【问题标题】:Android default browser keyboard causing resizeAndroid默认浏览器键盘导致调整大小
【发布时间】:2013-09-26 15:55:45
【问题描述】:

我正在开发一个网站,并试图让它在移动设备上运行。大多数情况下它工作正常,但在 android 默认浏览器中。

例如,我有日期的文本输入,我使用 jquery 日历来帮助用户。所以我真的不需要键盘,但无论如何它都会出现,因为它是一个输入......

问题是页面和在这种情况下整页内框被调整大小,当我隐藏键盘时,大小没有恢复。旋转设备足以解决它,但我仍然无法告诉客户。

是否可以防止键盘出现或触发重新绘制页面的事件?

非常感谢您的帮助。

【问题讨论】:

    标签: android mobile browser web


    【解决方案1】:

    如果添加 jQuery blur() 事件,您可以防止日期选择器触发键盘。有关详细信息,请参阅此帖子 Disable setting of focus for jQuery UI datepicker

    【讨论】:

    • 您好,坦克为您解答。从您提供的链接中,我发现在输入中使用 readonly='true' 属性效果更好,因为文本可以是黑色而不是灰色。 FWI:我尝试了模糊,但在某些情况下,键盘出现了 1 秒,然后在完全打开之前就被隐藏了。
    【解决方案2】:

    根据经验,在移动浏览器中单击文本输入(默认功能)时,没有简单的方法可以强制键盘不出现。

    如果用户总是使用日历来选择日期,那么您可以简单地将文本输入切换为 div 元素。

    给 div 一个点击事件,点击时只需弹出 jquery 日历 :) 当他们选择日期时,只需将其放在 div 中,这应该可以解决问题

    另一个选项是简单地给你的 textarea/input 一个 disabled="disabled" 属性,当用户点击它时,什么都不会发生。然后,您可以创建自己的 onclick 以显示日历

    $('#id').on('click', function()
    {
       // bring up calender
    });
    

    and when the select the date you can insert it into the textinput via javascript..

    如果他们不能真正点击里面,键盘就不会出现!

    【讨论】:

      猜你喜欢
      • 2015-10-18
      • 2015-11-12
      • 2016-02-13
      • 1970-01-01
      • 2017-08-08
      • 2014-07-19
      • 2010-10-26
      • 1970-01-01
      • 2016-06-16
      相关资源
      最近更新 更多