解决 iOS 端输入框聚焦时页面上移问题

一、前言

iOS Safari 浏览器中,输入框(input/textarea)聚焦时,页面常会莫名上移且失焦后不回落,影响用户体验。通过监听输入框焦点事件,可强制页面回正

二、代码注释详解

javascript 复制代码
// 解决iOS输入框聚焦后页面上移问题
const inputs = document.querySelectorAll("input, textarea");
inputs.forEach((input) => {
  // 失焦时强制页面滚动到顶部(或指定位置)
  input.addEventListener("blur", () => {
    window.scrollTo({
      top: 0,
      left: 0,
      behavior: "smooth", // 平滑滚动,可选
    });
  });

  // 聚焦时也可微调位置(根据需求可选)
  input.addEventListener("focus", () => {
    setTimeout(() => {
      input.scrollIntoViewIfNeeded(false); // false表示不居中,避免页面偏移
    }, 100);
  });
});
相关推荐
一 乐1 小时前
婚纱摄影网站|基于ssm + vue婚纱摄影网站系统(源码+数据库+文档)
前端·javascript·数据库·vue.js·spring boot·后端
C_心欲无痕2 小时前
ts - tsconfig.json配置讲解
linux·前端·ubuntu·typescript·json
清沫2 小时前
Claude Skills:Agent 能力扩展的新范式
前端·ai编程
yinuo3 小时前
前端跨页面通信终极指南:方案拆解、对比分析
前端
yinuo3 小时前
前端跨页面通讯终极指南⑨:IndexedDB 用法全解析
前端
xkxnq4 小时前
第二阶段:Vue 组件化开发(第 16天)
前端·javascript·vue.js
烛阴4 小时前
拒绝配置地狱!5 分钟搭建 Three.js + Parcel 完美开发环境
前端·webgl·three.js
Van_Moonlight4 小时前
RN for OpenHarmony 实战 TodoList 项目:空状态占位图
javascript·开源·harmonyos
xkxnq4 小时前
第一阶段:Vue 基础入门(第 15天)
前端·javascript·vue.js
anyup5 小时前
2026第一站:分享我在高德大赛现场学到的技术、产品与心得
前端·架构·harmonyos