window.open没有't在设置setTimeout内工作-弹出窗口被阻止

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

本文关键字:工作 窗口 setTimeout 没有 open 设置 window      更新时间:2023-09-26

我正试图使用window.open打开一个新窗口,但有一些延迟。当我使用setTimeout时,浏览器显示弹出窗口被阻止?。

不起作用:

<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>

确实有效:

<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>

我必须使用window.open打开新的选项卡窗口,但在setTimeout内会有一些延迟。任何替代方案和变通方案都将不胜感激。

目标是打开两个页面,一个在同一页面中,另一个在新选项卡中,但有延迟。

你可能想试试这个:

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