2

当我使用手机和平板电脑使用虚拟键盘时,Typeahead存在问题。使用虚拟键盘的自举键盘无法正常工作

当我点击typeahead控件(一个html输入)时,虚拟键盘出现,我可以输入查询文本。然后下拉菜单显示结果,当我选择一个选项时,虚拟键盘关闭,所选选项显示在控件中。但是立即再次显示虚拟键盘,因为焦点返回到预先控制并再次触发轻击事件。

Bootstrap页面上的示例具有相同的行为。

[编辑] 用户必须选择几个选项,当选择第一个选项时,我想在下一个选项控件中设置焦点,但是键入前面的焦点返回到自身。 我无法在选择后立即设置焦点。 这只是与Boostrap发生。例如jquery自动完成工作正常。

任何人都可以帮助我吗?

感谢

+0

但是,用户不会只是在虚拟键盘上点击“开始”,无论如何他们已经选择了一个项目? – 2013-02-26 16:29:45

+0

用户必须选择几个选项,当选择第一个选项时,我想在下一个选项控件中设置焦点,但键入前将焦点返回给自己。我不能在选择 – Gonzalo 2013-02-26 16:42:00

+0

后设置焦点这可能是有用的:https://gist.github.com/Yavari/1891669 – 2013-02-26 16:46:13

回答

2

在引导-typeahead.js V2.3.0到Typeahead.prototype,“点击”功能,选择一个项目后,将焦点设置“输入控制”了。 这不是必需的。所以我删除了该代码行,现在typeahead在所有移动设备和平板电脑浏览器上都能正常工作。

... 
    , click: function (e) { 
      e.stopPropagation() 
      e.preventDefault() 
      this.select() 
      //this.$element.focus() //I removed this line 
     } 
...