zoukankan      html  css  js  c++  java
  • 右下角的弹窗,类似于QQ的弹出框!(代码)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>右下角的弹窗</title>
    </head>
    <style type="text/css">
    body { background:#333333;}
    #winpop { 200px; height:0px; position:absolute; right:0; bottom:0; border:1px solid #999999; margin:0; padding:1px; overflow:hidden; display:none; background:#FFFFFF}
    #winpop .title { 100%; height:20px; line-height:20px; background:#FFCC00; font-weight:bold; text-align:center; font-size:12px;}
    #winpop .con { 100%; height:80px; line-height:80px; font-weight:bold; font-size:12px; color:#FF0000; text-decoration:underline; text-align:center}
    #silu { font-size:13px; color:#999999; position:absolute; right:0; text-align:right; text-decoration:underline; line-height:22px;}
    .close { position:absolute; right:4px; top:-1px; color:#FFFFFF; cursor:pointer}
    </style>
    <script type="text/javascript">
    function tips_pop(){
      var MsgPop=document.getElementById("winpop");//获取窗口这个对象,即ID为winpop的对象
      var popH=parseInt(MsgPop.style.height);//用parseInt将对象的高度转化为数字,以方便下面比较
       if (popH==0){         //如果窗口的高度是0
       MsgPop.style.display="block";//那么将隐藏的窗口显示出来
      show=setInterval("changeH('up')",2);//开始以每0.002秒调用函数changeH("up"),即每0.002秒向上移动一次
       }
      else {         //否则
       hide=setInterval("changeH('down')",2);//开始以每0.002秒调用函数changeH("down"),即每0.002秒向下移动一次
      }
    }
    function changeH(str) {
     var MsgPop=document.getElementById("winpop");
     var popH=parseInt(MsgPop.style.height);
     if(str=="up"){     //如果这个参数是UP
      if (popH<=100){    //如果转化为数值的高度小于等于100
      MsgPop.style.height=(popH+4).toString()+"px";//高度增加4个象素
      }
      else{  
      clearInterval(show);//否则就取消这个函数调用,意思就是如果高度超过100象度了,就不再增长了
      }
     }
     if(str=="down"){ 
      if (popH>=4){       //如果这个参数是down
      MsgPop.style.height=(popH-4).toString()+"px";//那么窗口的高度减少4个象素
      }
      else{        //否则
      clearInterval(hide);    //否则就取消这个函数调用,意思就是如果高度小于4个象度的时候,就不再减了
      MsgPop.style.display="none";  //因为窗口有边框,所以还是可以看见1~2象素没缩进去,这时候就把DIV隐藏掉
      }
     }
    }
    window.onload=function(){    //加载
    document.getElementById('winpop').style.height='0px';//我不知道为什么要初始化这个高度,CSS里不是已经初始化了吗,知道的告诉我一下
    setTimeout("tips_pop()",800);     //3秒后调用tips_pop()这个函数
    }
    </script>
    <body>
    <div id="silu">
    <高手请忽略本文------------------------->
    今天在无忧看到的,<br />
    我就练习了一下,<br />
    想想还是分享给经典和我一样想学JS的菜鸟们.<br />
    <h2>首先,我们需要知道理解一下动画的概念,动画就是随着时间的变化产生位置移动</h2><br />
    在JS中用到的函数是setInterval(),具体的使用请去看javascript相关文档<br />
    <h3>下面我们来想一下本例子的思路:</h3><br />
    这个时候我们会去猜想:<br />
    如果没有窗口,就让它出来.如果窗口存在,那么就让它消失.<br />
    对,就是if..else..条件判断了~~<br />
    那么窗口消失的状态是什么呢?<br />
    没错,就是height=0.<br />
    height=0的时候就是隐藏<br />
    height=100px的时候就是显示<br />
    所以利用高度的变化就是效果实现的方法.<br />
    而且是随着时间一点点的位置变化造成动画了效果<br />
    好了,我也就不废话了,我们菜鸟请看注释~~<br /><br />
    By FFEEDD<br /><br />
    <button onclick="tips_pop()">测试按钮</button>
    </div>
    <div id="winpop">
     <div class="title">您有新的消息<span class="close" onclick="tips_pop()">X</span></div>
        <div class="con">未读信息(1)</div>
    </div>
    </body>
    </html>
  • 相关阅读:
    Harbor安装 -- 企业级Registry仓库
    https原理
    第十节
    第九节
    第八节
    Spring中用到的部分设计模式
    代理模式及实现
    单例模式的实现
    索引
    第九章 集合
  • 原文地址:https://www.cnblogs.com/rooney/p/1356788.html
Copyright © 2011-2022 走看看