移动端页面加载后input自动获得焦点并且弹出自动弹出软键盘,请问怎么弹出?ios中自动获得焦点失效?
如题,需要是页面加载完成后,input自动获得焦点,并且自动弹出软键盘,现在的问题是:
1.无法弹出软键盘
2.ios苹果手机浏览器无法自动获得焦点(安卓正常)
html如下:
<input autofocus id="mobile" type="tel" placeholder="请输入您的手机号码"/>
请问大神,有没有其他好的解决方法?谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
来自FastClick团队的大牛指出了IOS下input的获取焦点存在这样的问题:
我和我的同事发现,iOS将只允许在其他元素上绑定函数来触发focus事件,如果第一个函数调用栈是由非编程触发的事件(这句不知道怎么翻译)。IOS的安全机制开始阻止你触发input元素的focus事件。
就是说如果没有通过某种用户交互,iOS不会(触发focus事件)
可参考这篇文章
github上也有相关的issue:iOS does not show keyboard on .focus()
所以解决的方案你可以试试:(即为输入框绑定一个事件,然后主动触发)
你可以在页面再加一个无关的<div id = '#tickt'> </div>
input autofocus
onload事件里手动触发focus
你试试给input标签加个自动点击事件?页面加载完成后,自动点击一次…模拟手指点击,有时候解决问题可以从多方面考虑。
解决了吗?我也遇到这个问题,现在是用自己写的,但会出现不灵敏的现象