一段时间后重定向网站

cod*_*ude 124 html redirect

我需要做些什么才能在网站上有一个功能,它会在3秒左右的时间内将你重定向到网站?

Dar*_*rov 189

<meta http-equiv="refresh" content="3;url=http://www.google.com/" />
Run Code Online (Sandbox Code Playgroud)

  • W3C 建议不要使用此标签:https://www.w3.org/TR/WCAG10-HTML-TECHS/#meta-element (6认同)
  • 那么用什么来代替呢? (2认同)
  • @JohnSmith - W3C 建议您不要猜测用户需要阅读评论多长时间,而应允许用户执行重定向。然而,元刷新标签仍然是防止页面继续显示的最简单方法,该页面可能很快就会过时,所有其他方法都需要以某种形式使用 Javascript。 (2认同)

Luk*_*keH 62

您可能正在寻找meta refresh标签:

<html>
    <head>
        <meta http-equiv="refresh" content="3;url=http://www.somewhere.com/" />
    </head>
    <body>
        <h1>Redirecting in 3 seconds...</h1>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

请注意,meta refresh这些天使用已弃用并不赞成,但有时它是唯一可行的选项(例如,如果您无法在服务器端生成HTTP重定向标头和/或您需要支持非JavaScript客户端等).


mbr*_*ort 46

如果你想要更好的控制,你可以使用javascript而不是使用元标记.这将允许您拥有某种形式的视觉效果,例如倒计时.

这是一个非常基本的方法 setTimeout()

<html>
    <body>
    <p>You will be redirected in 3 seconds</p>
    <script>
        var timer = setTimeout(function() {
            window.location='http://example.com'
        }, 3000);
    </script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)


noa*_*mtm 17

这是一个完整(但简单)的示例,在X秒后重定向,同时更新计数器div:

<html>
<body>
    <div id="counter">5</div>
    <script>
        setInterval(function() {
            var div = document.querySelector("#counter");
            var count = div.textContent * 1 - 1;
            div.textContent = count;
            if (count <= 0) {
                window.location.replace("https://example.com");
            }
        }, 1000);
    </script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

counterdiv 的初始内容是等待的秒数.


Ehs*_*san 10

最简单的方法是使用HTML META标记,如下所示:

<meta http-equiv="refresh" content="3;url=http://example.com/" />
Run Code Online (Sandbox Code Playgroud)

维基百科