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);
    });
    });

    评论

报告相同问题?

悬赏问题

  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用