我正在创建我的网站的移动版本。网站的一部分会弹出一个带有文本输入的对话框。通常我会使用jQuery将焦点带到文本输入,但这不起作用。这是我正在尝试的:
$("#textinput").focus();
$("#textinput").click();
$("#textinput").trigger("tap"); //jQuery Mobile
它们似乎都不起作用。有任何想法吗?我一直在我的DroidX上测试它。我正在使用jQuery Mobile,但如果他们有帮助,我会对其他图书馆开放。
答案 0 :(得分:43)
你不能,至少不能在iOS(iPhone)中,我也相信Android。这是一个可用性问题,除了用户输入之外不应该允许触发键盘(如果它是自动的,那就太烦人了。)
我知道有几种方法可以解决这个问题:
prompt()
打开键盘.focus()
事件中触发.click()
(例如打开对话框),键盘会显示答案 1 :(得分:21)
$( “#的TextInput”)聚焦();
通过将焦点设置为输入元素来打开键盘,只有在“用户上下文”(例如,单击,mousedown,mouseup)中设置焦点时才会起作用。
从“脚本上下文”(setTimeout,从ajax调用返回的回调)中,键盘将不会显示。
答案 2 :(得分:1)
你可以使用:
$(textFiled).trigger("focus");
您可以将此代码放入某些功能中,该功能会在打开某些叠加层时触发,或者在文档准备就绪时触发。