首次单击后x秒后自动关闭页面

时间:2014-02-19 01:45:43

标签: javascript jquery

嗯,我想这很简单。我需要一个自动关闭页面的JavaScript。示例:用户来到我的网站,然后他可能会停留他想要的时间,但是在他点击我的网站上的某些内容后(例如他点击嵌入YouTube视频的播放按钮,或者无关紧要)然后从那一刻起,40秒后页面将会非常接近。有可能吗?

3 个答案:

答案 0 :(得分:0)

为此使用JavaScript。在触发倒计时的任何事件后调用以下内容:

window.setInterval(window.close,40000);

答案 1 :(得分:0)

您是否尝试搜索过您的问题?

How to close current tab in a browser window?

  

此方法适用于Chrome和IE:

<a href="blablabla" onclick="setTimeout(function(){var ww = window.open(window.location, '_self'); ww.close(); }, 1000);">
    If you click on this the window will be closed after 1000ms
</a>
  

有办法做到这一点,但他们是“黑客”ish。

     

出于安全原因,JavaScript无法关闭它所执行的窗口   没开。但是,你可以使用一种技巧让浏览器认为你的   当前窗口由javaScript打开

  

您无法通过JavaScript关闭任何标签。 “这种方法是唯一允许的   调用由脚本使用的脚本打开的窗口   window.open方法。“换句话说,你只能使用JavaScript   关闭通过JavaScript生成的窗口/选项卡。

答案 2 :(得分:0)

单独使用PHP无法实现您的计划,但您可以让PHP生成javascript以满足您的需求。

无法关闭用户打开的页面。这是一个规则浏览器已实现,以防止发送具有此类脚本的恶作剧电子邮件。 (在实施之前,有些电子邮件包含打开时关闭当前标签的脚本。)

但我和你之前有同样的问题。 要解决该问题,您需要javascript重新打开选项卡并快速关闭它。 这是我在webapps上用于关闭按钮的脚本:

function Close_Button(){
    msg = confirm("Are you sure you want to Exit IES?");
    if(msg){
        setTimeout(function(){
            window.open('', '_self', '');
                window.close();
        }, 10);
    }
}

您可以将相同的脚本绑定到您正在谈论的点击,并删除确认消息。如果您希望它在40秒内关闭,请参阅下面的示例。

编辑: 在没有确认计时器的情况下关闭的脚本:

function Close(timer){//timer = number of seconds
        setTimeout(function(){
        window.open('', '_self', '');
        window.close();
    }, timer * 1000);

}

然后你可以这样触发:

Close(5);

并将其绑定到元素的点击事件。

<div id="YouTubeVideoContainer" onclick="Close(40);">
    Closes in 40 seconds.
</div>