简体   繁体   English

window.open在set setTimeout中不起作用-弹出窗口被阻止

[英]window.open doesn't work inside set setTimeout - popup blocked

I'm trying to open a new window using window.open but with some delay. 我正在尝试使用window.open打开一个新窗口,但是有些延迟。 When I use setTimeout browsers shows popup blocked?. 当我使用setTimeout时,浏览器显示弹出窗口被阻止了吗?

DOES NOT WORK: 不起作用:

<a onclick="nextQuestion('https://www.google.com');">Gift</a>       

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script>
function nextQuestion(offer){
    setTimeout(function(){
        window.open('http://www.yahoo.com/','_blank'); 
        window.location = offer;
    }, 4000);
}
</script>

DOES WORK: 运作方式:

<a onclick="nextQuestion('https://www.google.com');">Gift</a>       

    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    <script>
    function nextQuestion(offer){
            window.open('http://www.yahoo.com/','_blank'); 
            window.location = offer;
    }
    </script>

I have to open new tab window using window.open but inside setTimeout for some delay. 我必须使用window.open打开新的选项卡窗口,但在setTimeout内会出现一些延迟。 Any alternate and work around would be much appreciated. 任何替代和解决将不胜感激。

The objective is to open two pages, one inside same page and second in new tab but there is delay. 目的是打开两个页面,一个页面在同一页面内,第二个页面在新选项卡中,但是会有延迟。

您可能要尝试以下操作:

<a onclick="setTimeout(nextQuestion('https://www.google.com'), 4000);">Gift</a>    

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM