You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止iOS自动聚焦首个可见输入框?

iOS输入框自动聚焦弹出键盘的解决方案
  • 延迟执行失焦操作
    iOS的自动聚焦可能在页面加载完成后立即触发,设置短延迟后执行blur()可以覆盖这个行为:

    document.addEventListener('DOMContentLoaded', () => {
      const targetInput = document.querySelector('input');
      if (targetInput) {
        setTimeout(() => {
          targetInput.blur();
        }, 100);
      }
    });
    
  • 临时禁用输入框交互
    先通过CSS禁用输入框的交互能力,等页面稳定后再恢复,避免iOS自动识别聚焦:

    input {
      pointer-events: none;
    }
    

    配合JavaScript恢复交互:

    document.addEventListener('DOMContentLoaded', () => {
      setTimeout(() => {
        document.querySelector('input').style.pointerEvents = 'auto';
      }, 200);
    });
    
  • 拦截focus事件
    直接监听输入框的focus事件,阻止默认行为或立即失焦:

    const targetInput = document.querySelector('input');
    targetInput.addEventListener('focus', (e) => {
      e.preventDefault();
      targetInput.blur();
    }, { passive: false });
    
  • 排查主动聚焦代码
    检查项目中是否存在第三方库或自定义代码主动调用了input.focus(),这类代码也可能导致iOS上的自动聚焦问题。

内容的提问来源于stack exchange,提问作者Claytinho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 11:00:56