如何关闭此弹出窗口?

时间:2013-05-18 10:27:02

标签: php javascript ajax

我怎么能关闭这个弹出窗口? 在这段代码中,我打开一个弹出窗口,在另一个页面中显示一些代码。我需要一个按钮来关闭弹出窗口。

<script type="text/javascript">
    var xmlhttp;
    function showpopup(id) {
        document.getElementById('popup').style.display = 'block';
        if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        }
        else { // code for IE6, IE5
            xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById('response').innerHTML = xmlhttp.responseText;
            }
        };
        xmlhttp.open('GET', 'more-messages.php?id=' + id, true);
        xmlhttp.send();
    }
</script>

    <a href='#' onclick=\"showpopup($id)\">link to ID</a>
    <div id='popup' style='background-color: #888888; position: absolute; top: 0; left: 0; opacity: 0.4; display: none; width: 100%; height: 100%'>
    </div>
    <div id='response' style='position: absolute; top: 0; left: 0; width: 40%; margin-top: 14.5%; margin-left: 30%; border: 1px solid balck; background-color: #ffffff; border-radius: 25px;'>
    </div>  

2 个答案:

答案 0 :(得分:0)

如果你有一些css属性的开放自定义div,可以像

一样隐藏它
document.getElementById('popup').style.display = 'none';

在子页面中,您可以编写像

这样的函数
    <html>
<head>

    <script language="Javascript">

        function redirectToFB(){
            window.opener.location.href="http://wwww.yourdomain.com";
            self.close();
        }

    </script>

</head>
<body>

    Allow the user to view FB
    <br/>Are you sure?
    <input type="button" value="Ok" OnClick="redirectToFB()" />

</body>

让我知道我是否可以帮助你更多

答案 1 :(得分:0)

由于您的“弹出窗口”只是一个带有样式属性div的{​​{1}}元素,因此您可以再次将其设为隐身:

将此添加到您的JavaScript中:

display: none;

并将其添加到您的HTML中,以创建一个可点击的链接来关闭“弹出窗口”

function closepopup() {
    document.getElementById('popup').style.display = 'none';

    // and maybe this:
    document.getElementById('response').innerHTML = "";
}

这实际上只是撤消了showpopup功能的作用。