扫码关注官方订阅号
document.getElementById("leave-message-textarea").focus();
在pc上页面一加载是已经获得焦点可以直接输入的,但是在移动端就不行,必须点一下输入框手机的键盘才能升起开始输入。
欢迎选择我的课程,让我们一起见证您的进步~~
移动端的focus等确实有问题,这种(比如调用键盘输入框、调用音频播放器等)第一次有效执行需要在用户自己触发一个事件后开始执行,硬生生的在dom加载完后直接触发有时候会被某些浏览器或者系统阻止掉。
一般也就是给Input加上autofocus,然后保险再给额外的给document监听一个touchstart事件,这个事件的回调中在来触发input的focus()。
autofocus
focus()
我的解决思路就是这样的,当时做这玩意的时候也是自己的身边的几个手机和浏览器测了下,没全测,也不知道是不是满足所以情况。
试下autofocus呢?<input type="text" placeholder="xxx" autofocus>
<input type="text" placeholder="xxx" autofocus>
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
移动端的focus等确实有问题,这种(比如调用键盘输入框、调用音频播放器等)第一次有效执行需要在用户自己触发一个事件后开始执行,硬生生的在dom加载完后直接触发有时候会被某些浏览器或者系统阻止掉。
一般也就是给Input加上
autofocus,然后保险再给额外的给document监听一个touchstart事件,这个事件的回调中在来触发input的focus()。我的解决思路就是这样的,当时做这玩意的时候也是自己的身边的几个手机和浏览器测了下,没全测,也不知道是不是满足所以情况。
试下
autofocus呢?<input type="text" placeholder="xxx" autofocus>