zoukankan      html  css  js  c++  java
  • 窗口拖动支持最小化_关闭_半透明阴影_焦点颜色


    保存成html文件即可,代码:
    <html>
    <head>
    <title>_xWin</title>
    <style type='text/css'>
    <!--
    a:visited
    {text-decoration:none;color:slategray;}
    a:hover
    {text-decoration:underline;color:slategray;}
    a:link
    {text-decoration:none;color:slategray;}
    -->
    </style>
    <script language=JScript>
    <!--
    //可以打包为js文件;
    var x0=0,y0=0,x1=0,y1=0;
    var offx=6,offy=6;
    var moveable=false;
    var hover='orange',normal='slategray';//color;
    var index=10000;//z-index;
    //
    开始拖动;
    function startDrag(obj)
    {
    if(event.button==1)
    {
        
    //锁定标题栏;
        obj.setCapture();
        
    //定义对象;
        var win = obj.parentNode;
        
    var sha = win.nextSibling;
        
    //记录鼠标和层位置;
        x0 = event.clientX;
        y0 
    = event.clientY;
        x1 
    = parseInt(win.style.left);
        y1 
    = parseInt(win.style.top);
        
    //记录颜色;
        normal = obj.style.backgroundColor;
        
    //改变风格;
        obj.style.backgroundColor = hover;
        win.style.borderColor 
    = hover;
        obj.nextSibling.style.color 
    = hover;
        sha.style.left 
    = x1 + offx;
        sha.style.top    
    = y1 + offy;
        moveable 
    = true;
    }
    }
    //拖动;
    function drag(obj)
    {
    if(moveable)
    {
        
    var win = obj.parentNode;
        
    var sha = win.nextSibling;
        win.style.left 
    = x1 + event.clientX - x0;
        win.style.top    
    = y1 + event.clientY - y0;
        sha.style.left 
    = parseInt(win.style.left) + offx;
        sha.style.top    
    = parseInt(win.style.top) + offy;
    }
    }
    //停止拖动;
    function stopDrag(obj)
    {
    if(moveable)
    {
        
    var win = obj.parentNode;
        
    var sha = win.nextSibling;
        
    var msg = obj.nextSibling;
        win.style.borderColor       
    = normal;
        obj.style.backgroundColor 
    = normal;
        msg.style.color             
    = normal;
        sha.style.left 
    = obj.parentNode.style.left;
        sha.style.top    
    = obj.parentNode.style.top;
        obj.releaseCapture();
        moveable 
    = false;
    }
    }
    //获得焦点;
    function getFocus(obj)
    {
    if(obj.style.zIndex!=index)
    {
        index 
    = index + 2;
        
    var idx = index;
        obj.style.zIndex
    =idx;
        obj.nextSibling.style.zIndex
    =idx-1;
    }
    }
    //最小化;
    function min(obj)
    {
    var win = obj.parentNode.parentNode;
    var sha = win.nextSibling;
    var tit = obj.parentNode;
    var msg = tit.nextSibling;
    var flg = msg.style.display=="none";
    if(flg)
    {
        win.style.height    
    = parseInt(msg.style.height) + parseInt(tit.style.height) + 2*2;
        sha.style.height    
    = win.style.height;
        msg.style.display 
    = "block";
        obj.innerHTML 
    = "0";
    }
    else
    {
        win.style.height    
    = parseInt(tit.style.height) + 2*2;
        sha.style.height    
    = win.style.height;
        obj.innerHTML 
    = "2";
        msg.style.display 
    = "none";
    }
    }
    //关闭;
    function cls(obj)
    {
    var win = obj.parentNode.parentNode;
    var sha = win.nextSibling;
    win.style.visibility 
    = "hidden";
    sha.style.visibility 
    = "hidden";
    }
    //创建一个对象;
    function xWin(id,w,h,l,t,tit,msg)
    {
    index 
    = index+2;
    this.id        = id;
    this.width     = w;
    this.height    = h;
    this.left      = l;
    this.top       = t;
    this.zIndex    = index;
    this.title     = tit;
    this.message = msg;
    this.obj       = null;
    this.bulid     = bulid;
    this.bulid();
    }
    //初始化;
    function bulid()
    {
    var str = ""
        
    + "<div id=xMsg" + this.id + " "
        
    + "style='"
        
    + "z-index:" + this.zIndex + ";"
        
    + "" + this.width + ";"
        
    + "height:" + this.height + ";"
        
    + "left:" + this.left + ";"
        
    + "top:" + this.top + ";"
        
    + "background-color:" + normal + ";"
        
    + "color:" + normal + ";"
        
    + "font-size:10px;"
        
    + "font-family:Verdana;"
        
    + "position:absolute;"
        
    + "cursor:default;"
        
    + "border:2px solid " + normal + ";"
        
    + ""
        
    + "onmousedown='getFocus(this)'>"
         
    + "<div "
         
    + "style='"
         
    + "background-color:" + normal + ";"
         
    + "" + (this.width-2*2+ ";"
         
    + "height:20;"
         
    + "color:white;"
         
    + ""
         
    + "onmousedown='startDrag(this)' "
         
    + "onmouseup='stopDrag(this)' "
         
    + "onmousemove='drag(this)' "
         
    + "ondblclick='min(this.childNodes[1])'"
         
    + ">"
          
    + "<span style='" + (this.width-2*12-4+ ";padding-left:3px;'>" + this.title + "</span>"
          
    + "<span style='12;border-0px;color:white;font-family:webdings;' onclick='min(this)'>0</span>"
          
    + "<span style='12;border-0px;color:white;font-family:webdings;' onclick='cls(this)'>r</span>"
         
    + "</div>"
          
    + "<div style='"
          
    + "100%;"
          
    + "height:" + (this.height-20-4+ ";"
          
    + "background-color:white;"
          
    + "line-height:14px;"
          
    + "word-break:break-all;"
          
    + "padding:3px;"
          
    + "'>" + this.message + "</div>"
        
    + "</div>"
        
    + "<div style='"
        
    + "" + this.width + ";"
        
    + "height:" + this.height + ";"
        
    + "top:" + this.top + ";"
        
    + "left:" + this.left + ";"
        
    + "z-index:" + (this.zIndex-1+ ";"
        
    + "position:absolute;"
        
    + "background-color:black;"
        
    + "filter:alpha(opacity=40);"
        
    + "'>by wildwind</div>";
    document.body.insertAdjacentHTML(
    "beforeEnd",str);
    }
    //-->
    </script>
    <script language='JScript'>
    <!--
    function initialize()
    {
    var a = new xWin("1",160,200,200,200,"消息","消息标题 <br>测试消息体<br>2005-7-12");
    var b = new xWin("2",240,200,100,100,"对话框","一个很牛叉的窗口");
    var c = new xWin("3",200,160,250,50,"版权信息","Copyright by <a href='http://hi.baidu.com/2427'>Mars.CN</a>!");
    var d = new xWin("4",200,160,450,250,"中文测试","测试中文内容<br><a href='http://hi.baidu.com/2427' title='我的网站'>测试中文连接</a>");
    }
    window.onload 
    = initialize;
    //-->
    </script>

    <script language='JScript'>
    function addwin(){
    var x= new xWin("5",200,160,550,150,"新窗口","新窗口内容");
    }
    </script>
    </head>
    <body onselectstart='return false' oncontextmenu='return false' scroll='no'>

    </body>
    </html>

    <html> 
    <head> 
    <style> 
    .button2 
    { 
    border-right
    :1px solid buttonhighlight; 
    border-left
    :1px solid buttonshadow; 
    border-bottom
    :1px solid buttonhighlight; 
    border-top
    :1px solid buttonshadow 
    } 
    TD 
    { 
    cursor
    : hand; font-size: 9pt; font-family: 宋体; text-align: center; text-valign: middle 
    } 
    .handin 
    { 
    height
    :18px; 
    width
    :2px; 
    border-left
    :1px solid buttonshadow; 
    border-right
    :1px solid buttonhighlight 
    } 
    .handout 
    { 
    height
    :18px; 
    width
    :2px; 
    border-left
    :1px solid buttonhighlight; 
    border-right
    :1px solid buttonshadow; 
    } 
    .into 
    { 
    width
    :100%; 
    border-right
    :1px solid buttonhighlight; 
    border-left
    :1px solid buttonshadow; 
    border-bottom
    :1px solid buttonhighlight; 
    border-top
    :1px solid buttonshadow 
    } 
    .outto,.button1 
    { 
    background-color
    : buttonface; 
    background-repeat
    : repeat; 
    background-attachment
    : scroll; 
    border-left
    : 1px solid buttonhighlight; 
    border-right
    : 1px solid buttonshadow; 
    border-top
    : 1px solid buttonhighlight; 
    border-bottom
    : 1px solid buttonshadow; 
    background-position
    : 0%" 
    } 
    .button0 
    { 
    } 

    </style> 
    </head> 
    <body topmargin="0" leftmargin="0" bgcolor="#E0E0E0"> 
    <script> 
    function change_button(num) 

    if(event.srcElement.tagName=="TD"&&event.srcElement.value=="button"
    event.srcElement.className 
    = "button"+num; 

    </script> 
    <div class="into" style=" 100%; height: 25"> 
    <table class="outto" border="0" width="100%" height="25" cellspacing="1" onmouseover="change_button(1)" onmouseup="change_button(0)" onmousedown="change_button(2)" onmouseout="change_button(0)"> 
    <tr> 
    <td width="1%" height="19"><span class="handout"></span></td> 
    <td width="9%" height="19" value="button" title="添加一个新窗口" onclick="addwin();">添加</td> 
    <td width="1%" height="19"><span class="handin"></span></td> 
    <td width="9%" height="19" value="button">按钮TD</td> 
    <td width="1%" height="19"><span class="handin"></span></td> 
    <td width="9%" height="19" value="button">按钮TD</td> 
    <td width="1%" height="19"><span class="handin"></span></td> 
    <td width="69%" height="19"></td> 
    </tr> 
    </table> 

    </div> 
    </body> 
    </html>
  • 相关阅读:
    python按行读取并替换
    python 爬取网页内容
    file.write(str),file.writelines(sequence)
    04Spring_bean 后处理器(后处理Bean),BeanPostProcessor ,bean创建时序,动态代理
    03Spring_bean的创建和作用域以及生命周期
    02Spring_Ioc和DI介绍
    01Spring_基本jia包的导入andSpring的整体架构and怎么加入日志功能
    错题724-java
    05传智_jbpm与OA项目_部门模块中增加部门的jsp页面增加一个在线编辑器功能
    04传智_jbpm与OA项目_部门模块改进_直接在BaseAction中实现ModelDriven<T>
  • 原文地址:https://www.cnblogs.com/wangpei/p/1545942.html
Copyright © 2011-2022 走看看