abc_lala 2016-07-18 05:42 采纳率: 13.3%
浏览 1375

JS的setTimeout函数没有效果

    var passId=document.getElementsByClassName("mima");  //获得2个密码框对象
    var biao=document.getElementsByTagName("form");      //获得提交的表单对象
    i++;
    //判断密码是否输入
    if(passId[0].value==""){
    var p=document.createTextNode("请先输密码");
    var para=document.createElement("span");
    para.appendChild(p);
    para.setAttribute("style","color:green");
    biao[0].insertBefore(para,passId[1].nextSibling);
    setTimeout(para.setAttribute('style','display:none;'),3000);
    以上是部分JS代码,html代码如下
    <span>密码:</span>
      <input class="mima" type="password" name="password" />
      <br/>
      <br/>
      <span>确认密码:</span>
      <input class="mima" onfocus="real()" type="password" name="password_check" />
        我想实现确认密码框输入的时候判断是否密码框输入了密码,如果没输入提示GG,并且过几秒GG会消失。
        问题:
        1.我想调用父亲节点的removeChild,结果没有任何反应,后来我利用setAttribute,设置display为none,但是setTimeout并没有延时执行。
        2.在我加入文本节点的时候,我在上面是5个字,不会出现换行,当我输入6个或者多个就出现如下效果![图片说明](https://img-ask.csdn.net/upload/201607/18/1468820277_139754.png)
        莫名的出现换行。
        麻烦解答一下,谢谢。
  • 写回答

3条回答 默认 最新

  • 微风吹过的夏天2016 2016-07-18 06:13
    关注

    settimeout要放到onblur事件中去。
    ///jquery写法:
    $(function(){
    $("#2222").bind("blur",function(){
    setTimeout($("#1111").css("display","none"),3000);
    });
    });

    评论

报告相同问题?

悬赏问题

  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程