当子窗口启动时灰色显示父窗口

时间:2012-05-21 03:43:58

标签: php javascript jquery ajax jquery-ui

我正在寻找一种方法:

  1. Javascript函数,用于打开弹出窗口,显示我的员工的列表视图
  2. 当弹出窗口打开灰色的父/开启窗口
  3. 当弹出窗口关闭时,父窗口“面纱”将被删除。
  4. 感谢您提供任何代码或想法。

4 个答案:

答案 0 :(得分:1)

我理解的是......

您正在尝试使用称为“叠加”的内容(在父级打开时将灰色背景放在子级中)。这称为模态弹出窗口,在这里我给你一个插件链接,用于与jQuery一起使用它们:

http://www.designlabelblog.com/2009/03/20-ways-to-create-javascript-modal.html

答案 1 :(得分:1)

这是我为此构建的解决方案,可通过open()close()

访问

您可以将所有内容都粘贴在#container

html:

<span id="empli">Employees</span>

<div id="block"></div>
<div id="container">
    <h3>Employees</h3>
    <ul>
        <li>James</li>
        <li>Jemima</li>
        <li>lenny</li>
        etc..
    </ul>
    <span id="closebtn">Close</span>
</div>​

css:

* { font-family: Trebuchet MS; }
#container {width:90%; height: 90%; display: none; position: fixed;margin-top: 5%; margin-left: 5%; background:#FFF; border: 1px solid #666;border: 1px solid #555;box-shadow: 2px 2px 40px #222; z-index: 999999;}
#container iframe {display:none; width: 100%; height: 100%; position: absolute; border: none; }
#block {background: #000; opacity:0.6;  position: fixed; width: 100%; height: 100%; top:0; left:0; display:none;}
ul { padding:10px; background: #EEE; position: absolute; height: 200px; overflow: scroll;}
ul li {color: #222; padding: 10px; font-size: 22px; border-bottom: 1px solid #CCC;  }
h3 { font-size: 26px; padding:18px; border-bottom: 1px solid #CCC; }
#closebtn { top: 13px;position: absolute;right: 13px; padding: 10px; background: #EEE; border: 1px solid #CCC;}
#closebtn:hover {  cursor: pointer; background: #E5E5E5 }

#empli { top: 13px;position: absolute;left: 13px; padding: 10px; background: #EEE; border: 1px solid #CCC;}
#empli:hover {  cursor: pointer; background: #E5E5E5 }

jquery:

function open() {
    $('#block').fadeIn();
    $('#container').fadeIn();   
}

function close() {  
    $('#block').fadeOut();
    $('#container').fadeOut();  
}

$(document).ready(function() {
  $('ul').css({width: $('#container').width()-20,height:    $('#container').height()-90})

     $('#closebtn').click( function() { close() })
     $('#empli').click( function() { open() })

});

答案 2 :(得分:0)

只需使用window.open,然后添加一些条件,您需要使父窗口变灰

答案 3 :(得分:0)

如何做到这一点有很多变化。面对同样的需求,我终于决定使用jQuery.impromptu。一旦定义了窗口的内容,我会弹出它,同时通过单一管理来显示父级:

    $.prompt(sFirstText,{overlayspeed:'fast',prefix:'wideJqi',top:80});

您可以在http://terryliittschwager.com/WB/JWB.php看到它。

即时通讯可在http://trentrichardson.com/Impromptu/处找到。