首先呢,还是先看看效果吧!
非可视密码下:
可视密码下:
到此呢,上正菜,为大家奉上。
wxml下:
1 <view class=‘sameBox‘> 2 <icon class=‘iconfont .icon-mima‘></icon> 3 <input bindinput=‘passWordInput‘ name="passWord" type="{{typeName}}" placeholder=‘请输入密码‘></input> 4 <view class=‘seePass‘ bindtap=‘showPass‘> 5 <icon class="iconfont .icon-yanjing" wx:if="{{passFlag == 1}}"></icon> 6 <icon class=‘iconfont .icon-bukeshi‘ wx:else></icon> 7 </view> 8 </view>
wxss下:
1 .sameBox{width: 100%;height: 50px;line-height: 50px;overflow: hidden;margin-top: 10px;} 2 .sameBox .iconfont:nth-child(1){float: left;font-size: 1.5rem;color: #4768F3;padding-left: 10px;} 3 .sameBox input{float: right;border-bottom: 1px solid #ccc;height: 97%;font-size: 0.85rem;width: 85%;color: #ccc;} 4 .sameBox:nth-child(2){position: relative;} 5 .seePass{position: absolute;top: 0;right: 0;width: 20px;height: 50px;padding-right: 20px;} 6 .seePass .icon-yanjing{font-size: 0.1rem;padding: 0;}
js下:
data: { typeName: ‘password‘, // 密码框的类型,用于显示密码时更改类型可看见输入的密码而非*号 passFlag: 1, // 密码第几次点击代表,用于显示不同的图标 storePass: ‘‘, // 暂存密码,用于显示密码 }, showPass(){ // 显示密码而非*号 console.log(this.data.storePass) if (this.data.passFlag == 1){ // 第一次点击 this.setData({ passFlag: 2, typeName : ‘text‘}); }else{ // 第二次点击 this.setData({ passFlag: 1, typeName : ‘password‘}); } }, passWordInput(e) { // 监听密码input框并把输入的密码在变量storePass下暂存起来,用于在显示密码操作展示 console.log(e.detail.value) this.setData({ storePass: e.detail.value, passWord: e.detail.value }) },
END:到这里呢,想要的效果就可以实现了,希望对各位有用把,不足之处望海涵。。。
原文地址:https://www.cnblogs.com/xintao/p/11213365.html
时间: 2024-11-08 15:23:29