2

当我使用带有虚拟键盘的手机和平板电脑时,我遇到了 Typeahead 的问题。

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

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

[EDIT] The user must select several options, When selects the first, I want to set focus in the next option control, but typeahead return the focus to itself. 选择后我无法设置焦点。这只发生在 Boostrap 上。例如,jquery 自动完成功能可以正常工作。

谁能帮我?

谢谢

4

1 回答 1

2

在 bootstrap-typeahead.js v2.3.0 进入 Typeahead.prototype 中,“点击”功能,选择一个项目后,再次将焦点设置为“输入控件”。那是不必要的。所以我删除了该代码行,现在 typeahead 可以在所有移动设备和平板电脑浏览器上正常工作。

...
     , click: function (e) {
          e.stopPropagation()
          e.preventDefault()
          this.select()
          //this.$element.focus() //I removed this line
      }
...
于 2013-02-27T14:00:50.763 回答