如何通过javascript或jquery将输入字段集中在Android浏览器上

我试过$('#field').focus() ,以及在互联网上find的任何其他方法。 没有任何效果。 我有一个简单的HTML来重现问题。

      $(document).ready(function() { $('#field').focus(); });       

请帮忙!

实际上,一般的javascript函数“focus”在android浏览器中被停用。 因此,jQuery焦点function被停用,因为它正在使用上述function。

如果你将它绑定到另一个点击事件,它将工作。 这对我有用:

  $(document).ready(function() { $('#field').click(function(e){ $(this).focus(); }); $('body').click(function(e) { $('#field').trigger('click'); }) }) 

会popup软件键盘。 trigger()将触发您提供的任何事件。 在这种情况下,单击字段的默认行为== tap == focus == win! 注意:此调用绑定到另一个发生的单击事件。

click()focus()不够的 。 你需要focus()然后click() 。 如果脚本由包含元素上的onclick()触发,请注意无限循环。 下面的脚本适用于Chrome for Android 58和Safari mobile 602.1。 软键盘popup很好。

 var target = document.getElementsByTagName("input")[0]; if (event.target != target) { target.focus(); target.click(); }