uni-app Webview点击操作偏移

uni-app Webview点击操作偏移

类别 信息
产品分类 uniapp/App
PC开发环境 Windows
版本号 11
HBuilderX 正式
HBuilderX版本号 4.64
手机系统 HarmonyOS NEXT
手机系统版本号 HarmonyOS NEXT Developer Beta2
手机厂商 华为
手机机型 meta 60
页面类型 vue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

操作步骤:

  • 设置style="top: 33px"或者设置webview-styles="{ top: '33px' }"
  • 33px为随便写的,任意值都能复现

预期结果:

  • 点击操作不会偏移

实际结果:

  • 点击某个位置,实际响应位置会偏移设置的top值距离

bug描述:

UniApp项目,鸿蒙平台,若给Webview设置了style="top: 33px"或者设置webview-styles="{ top: '33px' }"则点击时会向下偏移33px,即若要点中50px的位置的内容需要点击50+33px的位置才行

hello-uni.zip


更多关于uni-app Webview点击操作偏移的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

hello , 这个问题是已知问题,正在排查

更多关于uni-app Webview点击操作偏移的实战教程也可以访问 https://www.itying.com/category-93-b0.html


网页碰到了噢,鸿蒙端的bug

这是一个已知的鸿蒙系统下Webview组件的点击坐标偏移问题。问题原因在于鸿蒙系统对Webview的触摸事件处理存在bug,当设置了top偏移后,系统没有正确计算触摸坐标。

目前可行的解决方案有:

  1. 临时方案:避免在鸿蒙设备上设置Webview的top样式,改用其他布局方式实现定位需求。

  2. 等待官方修复:DCloud团队已经注意到这个问题,后续版本可能会修复。可以关注官方更新日志。

  3. 使用条件编译针对鸿蒙设备做特殊处理:

// #ifdef APP-PLUS && HARMONY
// 鸿蒙特殊处理
// #endif
回到顶部