为了账号安全,请及时绑定邮箱和手机立即绑定

关于onfocus和onblur的问题习题问题

关于onfocus和onblur的问题习题问题

丛从绿草 2018-04-10 10:34:57
<head>.red{border:1px solid red;}</head><body>姓名:<input type="text"><span></span></body><script type="text/javascript">                var name=document.getElementsByTagName("Input")[0]; var tip=document.getElementsByTagName("span")[0]; function onfocusFn(){    if(this.value==""){        tip.innerHTML="请输入您的姓名";    }else{     tip.value="";    } } function onblurFn(){    if(this.value==""){        tip.innerHTML="用户名不能为空";        this.style.className="red";    }else{     tip.value="";     this.removeAttribute("class");    } } name.onfocus=onfocusFn; name.onblur=onblurFn;</script>请指教哪里出错了,好烦啊。。。速速帮忙解答。
查看完整描述

1 回答

?
码农2号

TA贡献151条经验 获得超48个赞

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.red{border:1px solid red;}
</style>
</head>
<body>
姓名:<input type="text" id="inp"><span></span>
<script type="text/javascript">
        // var name=document.getElementsByTagName("input")[0];
        var inp=document.getElementById('inp')
var tip=document.getElementsByTagName("span")[0];
function onfocusFn(){
   if(this.value==""){
       tip.innerHTML="请输入您的姓名";
   }else{
    tip.innerHTML="";
   }
}
function onblurFn(){
   if(this.value==""){
       tip.innerHTML="用户名不能为空";
       this.classList.add('red');
   }else{

    tip.innerHTML="";
    this.classList.remove('red');
   }
}
inp.onfocus=onfocusFn;
inp.onblur=onblurFn;

</script>
</body>
</html>


查看完整回答
反对 回复 2018-04-10
  • 码农2号
    码农2号
    还有个小问题,把30行this.classList.remove('red');复制一份写在16行后面,即onfocusFn函数里面。这个和定时器没开启就清除一样,防止边框颜色在多次操作时候变色。
  • 1 回答
  • 0 关注
  • 997 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信