繁体   English   中英

如何每X秒自动刷新页面标题

[英]How to auto-refresh page title every X seconds

我们的论坛有一个通知系统,该系统在页面标题后附加(#),#是他们当前拥有的通知数量(消息,喜欢的消息等)。 这不是通过AJAX或其他任何方式完成的-只是使用其模板系统在多个页面上调用#个通知,如下所示:

<title>({vb:raw total_notices}) - Our Site Title</title>

我想使标题每10秒左右自动刷新以反映最新的更新。 我已经在页脚模板中尝试过此操作(每页加载):

<script type="text/javascript">
setInterval(function() {
        document.title = document.title;
        }, 3000);
 </script>

但实际上并没有刷新,只是获取现有标题。 我知道代码本身正在工作/刷新,因为如果我将其更改为

document.title = "Test";

它将标题更新为“测试”没问题。

谢谢!

这很正常,因为执行document.title = document.title; 不向您的论坛服务器发出请求。 如果您想刷新标题,则必须提出请求。

如果页面上有jquery,则可以执行以下操作:

setInterval(function() {
    $.get(document.location.toString()).then(function (data){
       //find and set the title of the page
       document.title = data.match(/<title>(.+)<\/title>/)[1];
    });
}, 3000);

这项工作可行,但这不是一个好主意,因为此代码可以处理服务器上的许多请求...

暂无
暂无

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

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