JS:电子邮件客户端弹出后无法关闭当前窗口/选项卡

时间:2011-11-21 19:45:00

标签: javascript

编辑:我看了一眼:User clicks link in email, it opens email client, how to close window/tab?

只想确认,是否真的没办法。


我的页面充当“过渡/中间页面”,它会重定向到其他页面,或者打开电子邮件客户端。

“#myDiv”包含一个链接,它可能是普通链接(例如:http://www)或电子邮件链接(mailto :)。链接来自数据库。 我想做的是:

  1. 检测它是普通链接还是电子邮件链接。
  2. 如果是普通链接,请将页面重定向到该链接。
  3. 如果是mailto链接,请打开该电子邮件客户端(例如:outlook),然后关闭当前窗口/标签。
  4. 我有1和2工作,但3,我可以让电子邮件客户端(ooutlook)出来。但它只是没有关闭当前窗口/标签。

    <!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>Untitled Document</title>
    
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
    
    
    </head>
    
    <body>
    
    <div id="myDiv">
        <a href="mailto:test@test.com">Here is a email address. This window/tab should be closed.</a>
    </div>
    
    
        <script type="text/javascript">
            var link = jQuery("#myDiv a").attr("href");
            if(link.indexOf("mailto:") == -1) {
                window.location = link;
            } else {
                opener=self;
                //alert('in else');
                window.location = link;
                self.close();
                window.close();
            }
        </script>
    
    </body>
    </html>
    

    先谢谢。

1 个答案:

答案 0 :(得分:0)

如果您没有打开它,则无法关闭窗口(例如,使用window.open)。