[英]Automatically close window after some time
我想在5分鍾后自動關閉窗口。 我已經嘗試過PHP和Javascript。 但是問題是當彈出窗口重新加載時,計數器再次從0開始。 簡而言之,我想在5分鍾后關閉彈出窗口,但仍要在重新加載時關閉。
<script type="text/javascript">setTimeout("window.close();", 3000);</script>
使用javascript在窗口加載時調用以下函數:
setTimeout(function() { window.close(); }, 300000);
var foo = window.open('/advertise.html', 'blah', 'width=400, height=300');
foo.addEventListener('DOMContentLoaded', function(e) {
foo.opener.setTimeout(function() {
foo.close();
}, 5000);
}, false);
那實際上應該工作。 如果彈出式窗口從其他域Obv加載頁面,則此方法將無效。
這樣的事情-請注意,您只能關閉使用腳本打開的窗口
<?PHP
// set this on session start
$sessionStartTimeString = date("F j, Y, g:i a");
?>
window.onload=function() {
var serverTime = new Date('<?php echo $sessionStartTimeString ;?>');
var nowTime = new Date('<?php echo date("F j, Y, g:i a");?>');
var closeTime = serverTime.setMinutes(serverTime.getMinutes()+5);
var diff = closeTime.getTime()-nowTime.getTime();
if (diff > 0) setTimeout(function() { window.close(); }, diff);
else window.close()
}
這不是“好方法”,但是如果您的頁面必須重新加載,則可以設置並存儲關閉Cookie內彈出窗口的時間。 如果已設置cookie,請啟動計時器(不超過檢查時間間隔?),如果不存在,則將其設置為5分鍾內的時間,最后在關閉彈出窗口時將其刪除。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.