window.addEventListener('load', function () { var inpPhonNum = document.querySelector('#phonenum'); // 手机号输入框 var phoneTips = document.querySelector('.phonetips'); // 手机号输入提示 var flag = false; // 验证手机号是否已经正确输入 inpPhonNum.addEventListener('focus', function () { if (!flag) { phoneTips.style.color = 'blue'; phoneTips.innerHTML = "请输入11位数的手机号"; // 密码输入,获取焦点时提醒 } }) inpPhonNum.addEventListener('blur', function () { phoneTips.style.color = 'red'; if (this.value == '') { phoneTips.innerHTML = '手机号码不能为空'; } else if (this.value.length != 11) { phoneTips.innerHTML = '手机号码格式不正确'; } else { phoneTips.style.color = 'green'; phoneTips.innerHTML = "正确"; flag = true btn.disabled = false; // 手机号码正确才给验证码获取按钮激活 } }) var yzm = this.document.querySelector('#yanzhengma'); var btn = this.document.querySelector('.btn'); btn.disabled = true; // 按钮默认失活 var time = 5 btn.addEventListener('click', function () { // btn.disabled = true // 这里的 btn 可以用 windows 代替 this.disabled = true var timer = setInterval(function () { // 定时器里的 this 指向的是 Windows console.log(this); // 故 事件间隔函数不能随便使用 this if (time < 0) { clearInterval(timer) // 清楚间隔定时器 btn.disabled = false time = 5 // 重新开始 btn.innerHTML = '发送' } else { btn.innerHTML = time + '秒' time-- } }, 1000) }) var pw1 = this.document.querySelector('#pw1'); var pw2 = this.document.querySelector('#pw2'); var passtips = this.document.querySelector('.passtips'); var confirmpasstips = this.document.querySelector('.confirmpasstips'); pw1.addEventListener('focus', function () { if (this.value == '') { passtips.style.color = 'blue'; passtips.innerHTML = '密码长度需要去大于六位' } }) pw1.addEventListener('blur', function () { passtips.style.color = 'red'; if (flag && yzm.value != '') { if (this.value == '') { passtips.innerHTML = '密码不能为空'; } else if (this.value.length < 6) { passtips.innerHTML = '密码未满六位'; } else { passtips.style.color = 'green'; passtips.innerHTML = '正确'; } } else { passtips.innerHTML = '手机号或验证码错误'; } }) pw2.addEventListener('keyup', function () { if (pw1.value === pw2.value && pw1.value != '') { confirmpasstips.style.color = 'green' confirmpasstips.innerHTML = '正确' } else { confirmpasstips.style.color = 'red' confirmpasstips.innerHTML = '密码上下不一致'; } }) })