我尝试了很多方法让页面标题每 3 秒自动更新一次,这样标题就可以显示有多少条未读消息。
这是我尝试过的:
setInterval(function() {
document.title = "<?php echo $inboxcc; ?>";
}, 3000);
and
$(function() {
setInterval(function() {
$(this).attr("title", "<?php echo $inboxcc; ?>");
}, 3000);
});
但它们都不起作用。
每次需要新数据时,您都需要从服务器刷新数据,因为 PHP 块仅在每个页面视图(在服务器上)执行一次。制作一个像这样的 PHP 页面:
<?php
// data.php
// Grab the user from the session and calculate the 'unread messages' value
$user['inboxcc'] = the_unread_messages_value;
echo json_encode($user);
?>
然后像这样动态拉取数字:
var updater = function() {
$.getJSON('data.php',function(jsonuser){
document.title = jsonuser.inboxcc;
setTimeout(updater,3000);
});
};
setTimeout(updater,3000);
请注意,我使用setTimeout
代替setInterval
,因为您无法确定每个请求都会在 3 秒内返回。使用setTimeout
总体来说比较好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)