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>

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

相关推荐
万少2 分钟前
我是如何使用 Trae IDE 完成《流碧卡片》项目的完整记录
前端·后端·ai编程
9***Y483 分钟前
前端微服务
前端·微服务·架构
ByteCraze8 分钟前
我整理的大文件上传方案设计
前端·javascript
前端小白۞28 分钟前
vue2 md文件预览和下载
前端·javascript·vue.js
十里-35 分钟前
为什么创建1x1的gif图片,和png 或者jpg图片有什么区别
前端
u***u68543 分钟前
Vue云原生
前端·vue.js·云原生
OpenTiny社区1 小时前
TinyEngine 低代码实时协作揭秘:原理 +实操,看完直接用!
前端·vue.js·低代码
5***79002 小时前
Vue项目性能优化
前端·javascript·vue.js
天若有情6732 小时前
【c++】手撸C++ Promise:从零实现通用异步回调组件,支持链式调用+异常安全
开发语言·前端·javascript·c++·promise