uniapp开发的小程序输入框在ios自动填充密码,如何欺骗苹果手机不让自动填充

1:业务场景:开发的小程序有修改密码功能,测试的手机和在微信开发者工具模拟器上都是好好的,但是忽然发现在ios下小程序的第一个密码输入框会自动填充密码,特别不友好。

也使用了常见阻止input输入框自动填充的属性,也将这些属性组合使用,但是依旧没有效果。

常见的解决方法:

1: 使用autocomplete属性

为输入框添加autocomplete属性可以帮助iOS浏览器更好地识别输入框的用途,从而更准确地提供自动填充功能。例如:

javascript 复制代码
<input type="text" placeholder="用户名" autocomplete="username" />
<input type="password" placeholder="密码" autocomplete="current-password" />

2: 禁用自动填充

如果你不希望iOS自动填充任何信息,可以尝试将autocomplete属性设置为offnew-password(仅对密码字段)。例如:

javascript 复制代码
<input type="text" placeholder="用户名" autocomplete="off" />

<input type="password" placeholder="密码" autocomplete="new-password" />

后来查看原来ios系统很有个性,有自己的想法,通过测试发现,在账号框不为空,密码框不为空,两者都不为空,并且光标离开账号框或者密码框的时候,苹果系统会自 动提示存储密码或者更新密码的提示。又经过大量测试发现,账号输入框只是指的距离密码输入框最近的上一个输入框,因此解决办法 就是在密码输入框上面增加一个账号输入框,让他永远为空,并且不可见即可【页面不可见,不能是display:none) 最终解决办法:

javascript 复制代码
<u-form :model="form" ref="uForm" :label-width="200" :label-style="{'color':'#333','font-size': '36rpx',}"
					autocomplete="off">
					<u-form-item label="输入新密码" required>
						<input type="text" v-model="value" style="width: 1px;min-height: 1px; height: 1px;overflow: hidden; "
							auto-complete="current-password"></input>
						<u-input auto-complete="new-password" maxlength="20" type="password" v-model="form.newPassword"
							placeholder="输入新密码" :readonly="isReadonly" @focus="handleFocus" id="passwordThree" />
					</u-form-item>
					<u-form-item label="确认新密码" required :border-bottom="false">
						<input type="text" v-model="value" style="width: 1px;min-height: 1px; height: 1px;overflow: hidden; "
							auto-complete="current-password"></input>
						<u-input id="passwordFour" maxlength="20" auto-complete="new-password" type="password"
							v-model="confirmPassword" :readonly="isReadonly1" @focus="handleFocus1" placeholder="确认新密码"
							@blur="changePassword" />
					</u-form-item>
				</u-form>

亲测有效,有遇到同样问题的小伙伴可以试一下,如果有其他的好办法,也可以评论区分享给我哟,有什么问题咱们可以一起交流一下哟

相关推荐
万少7 分钟前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站2 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
炫饭第一名5 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫5 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊5 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter5 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
开心就好20255 小时前
UniApp开发应用多平台上架全流程:H5小程序iOS和Android
后端·ios
曲折5 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_6 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
Angelial6 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js