我需要自动关闭使用以下javascript打开的窗口。弹出窗口已正确打开,但不会在1秒后自动关闭。
<script>
function myFunction() {
window.open("http://google.com", "_blank", "toolbar=no,scrollbars=no,resizable=no,top=50,left=250,width=300,height=150"); setTimeout("window.close();", 1000)
}
</script>
有人可以帮忙解决这个问题。
谢谢
答案 0 :(得分:3)
您的settimeout
只是在调用一个字符串,这不是一个函数。
您还需要获取对弹出窗口的引用,然后对引用进行关闭:
<script>
function myFunction(e, anchor) {
e.preventDefault(); // Prevent navigation to page
var popup = window.open("http://google.com", "_blank", "toolbar=no,scrollbars=no,resizable=no,top=50,left=250,width=300,height=150");
setTimeout(function(){
popup.close();
// Continue navigating to link
window.location.href = anchor.getAttribute("href");
}, 1000);
}
</script>
<a href="https://yahoo.com" onclick="myFunction(event, this)"> <span class="tcb-button-texts">TRY IT NOW</span> </a>