用户如果离开密码框。里面输入个数不是6~16,则提示错误信息,否则提示输入正确信息
分析:(1)首先判断的事件是表单失去焦点onblur
(2)如果输入正确则提示正确的信息颜色为绿色小图标
(3)如果输入不是6~16位,提示错误信息颜色为红色小图标
(4)因为变化样式较多,采用className修改样式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
div {
width: 600px;
margin: 400px auto;
}
.message {
display: inline-block;
font-size: 12px;
color: #999;
background: url(../images/mess2.png) no-repeat left center;
padding-left: 20px;
}
.wrong {
color: red;
background: url(../images/mess.png) no-repeat left center;
}
</style>
</head>
<body>
<div class="register">
<input type="password" class="ipt">
<p class="message">请输入6~16位密码</p>
</div>
<script>
//1.获取元素
var ipt = document.querySelector('.ipt');
var message = document.querySelector('.message');
//2.注册事件 失去焦点
ipt.onblur = function () {
//根据表单里值的长度 ipt.value.length
if (this.value.length < 6 || this.value.length > 16) {
message.className = 'message wrong';
} else {
message.innerHTML = ''
}
}
</script>
</body>
</html>