【问题标题】:android browser timers when keyboard is open键盘打开时的android浏览器计时器
【发布时间】:2011-06-21 02:37:18
【问题描述】:

我遇到了这个问题,在安卓浏览器中打开软键盘时,异步函数不执行。

例如:

<input type='text' id='foo'/>
....
document.getElementById("foo").addEventListener("keyup", function() {
window.setTimeout(function() { alert("1"); }, 20);
}, false);

只要您始终专注于文本输入,您就永远不会看到警报。对于 xhr 回调也是如此。如果您尝试发出 ajax 请求,则会发送请求,但在您在文本框中键入另一个字符之前,永远不会触发 oncomplete 回调。

有人知道解决方法吗?您可以看到 Google 显然有一个带有搜索建议的工作示例,尽管我还不能通过查看缩小/混淆的源来弄清楚他们的解决方案到底是什么。

感谢任何见解,谢谢

【问题讨论】:

    标签: android ajax asynchronous xmlhttprequest


    【解决方案1】:

    使用最新的 jquery lib 风格

    $("#inputnum").keyup(function(e){
      if (e.keyCode != '13') {
        $("#outputarea").slideUp('slow');
      };
    });
    

    导致每次使用“#outputarea”选择的项目都会向上滑动 - 只要我在软件键盘或硬件键盘上键入任何字母。可能想给 jquery lib 一个机会?跨浏览器兼容性是我继续使用它的主要原因。

    【讨论】:

      猜你喜欢
      • 2016-02-13
      • 1970-01-01
      • 2016-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多