打开从弹出窗口中的链接在外部窗口,然后关闭原来的弹出窗口(open the link from th

2019-10-18 10:36发布

我有我需要从父窗口打开一个弹出窗口的要求。 我能够做成功。

现在我所要做的是 - 假设一个弹出窗口是开放的,有在弹出的窗口中某种联系,如果我尝试点击该链接,就应该在新窗口中打开该链接,原来的弹出窗口应该得到关闭。

这是小提琴我。 在这拨弄如果你点击应用按钮,然后它会打开它工作正常的弹出窗口,但如果你点击在弹出的窗口中,然后该链接获取这是我不想要的东西一样弹出窗口中打开的任何链接。 我想开一个新的外部窗口,链接及原弹出窗口应该得到关闭。

下面是JS代码 -

function open(url) {
    $('#blockdiv').fadeIn();
    $('#iframe').attr('src', url);
    $('#containerdiv').fadeIn();   
}

function close() {  
    $('#blockdiv').fadeOut();
    $('#containerdiv').fadeOut();  
}

$(document).ready(function() {
  $('ul').css({width: $('#containerdiv').width(),height:    $('#containerdiv').height()})
     $('#close').click( function() { close() })
     $('.JN_apply').click( function() { open($(this).data('url')); })

});

我在小提琴已经给出的例子将打开www.ebay.com网站,但总的来说这将是我的网页,将获得打开的弹出窗口。

是否有可能呢? 如果是的话,任何人可以帮助我吗?

更新后的代码: -

现在,我已经使用jQuery颜色框做同样的上述东西─启动

下面是我的父窗口的代码,将打开弹出式窗口 -

<!DOCTYPE html>
<html>
    <head>
        <meta charset='utf-8'/>
        <title>Colorbox Examples</title>
        <style>
            body{font:12px/1.2 Verdana, sans-serif; padding:0 10px;}
            a:link, a:visited{text-decoration:none; color:#416CE5; border-bottom:1px solid #416CE5;}
            h2{font-size:13px; margin:15px 0 0 0;}
        </style>
        <link rel="stylesheet" href="C:\Users\rj\Downloads\colorbox-master\example4\colorbox.css" />
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
        <script src="C:\Users\rj\Downloads\colorbox-master\jquery.colorbox.js"></script>
        <script>
            $(document).ready(function(){
                //Examples of how to assign the Colorbox event to elements
                $(".iframe").colorbox({iframe:true, width:"80%", height:"80%"});

            });
        </script>
    </head>
    <body>
        <h2>Other Content Types</h2>
        <p><a class='iframe' href="http://www.wikipedia.com">Outside Webpage (Iframe)</a></p>

        </body>
</html>

以下是我的弹出窗口的代码,这将有一个链接,我需要关闭原始弹出一个新的对外窗口,打开窗口 -

<html>
<head>
  <title>Apply</title>
</head>
<body>

<script>
function getUrlParameters() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, 
        function(m,key,value) {
            vars[key] = value;
        });
    return vars;
}
var id = getUrlParameters()["ID"];    
var title = getUrlParameters()["Title"];    
var id = unescape(id);
var title = unescape(title);

var myJScript = document.createElement('script');

myJScript.setAttribute('type', 'Apply');
myJScript.setAttribute('data-companyId', '40');
myJScript.setAttribute('data-jobTitle', id );
myJScript.setAttribute('data-email', 'admin@domain.net');

document.body.appendChild(myJScript); 
</script>
<hr>

<input name="Apply Online" type="button" id="Apply Online" value="Apply Online" ONCLICK="window.location.href='some_url'">

</body>
</html>

现在如何关闭弹出窗口在这种情况下,点击在线申请链接和在线申请链接应在新的对外窗口获得打开后? 我希望这个问题应该是很清楚。

Answer 1:

尝试

<input name="Apply Online" type="button" id="Apply Online" value="Apply Online" ONCLICK="window.location.href='some_url';$.colorbox.close();">

要么

<input name="Apply Online" type="button" id="Apply Online" value="Apply Online" ONCLICK="window.location.href='some_url';parent.$.colorbox.close();">



文章来源: open the link from the popup window in an external window and then close the original popup window