刷新页面而不重新渲染DOM

时间:2013-06-18 14:59:26

标签: php jquery caching metadata

这可能听起来像是一个容易回答的问题,但请在回答<?php echo "<meta http-equiv='refresh' content='0;url=./live'>"; ?><?php header ('Location: ./'); ?>之前阅读完整的问题。

我遇到了我的一个小项目的问题。像往常一样,我已经在这个解决方案中广泛搜索了stackoverflow和Google一段时间,但截至目前还找不到一个。

我的问题:

是否可以在不重新渲染DOM的情况下刷新页面(通过重新渲染DOM,我的意思是不要让页面变白并重新加载所有页面内容)。

我所看到的内容:

<?php
    $time = time();
    $event_time = '1371772800';

    if($time > $event_time) {
        echo "<meta http-equiv='refresh' content='0;url=./'>";
        exit();
    }
?>

这很好用,但是在用户手动重新加载页面之前它没有检测到$event_time值是否已经满足,所以我将<meta http-equiv=Refresh content='10; URL=./'>添加到我的HMTL中,这也很有用。 然而浏览器仍会重新渲染整个DOM,显示分散注意力的白色闪光(如果只有几秒钟)。

总结一下:

  • 有没有办法在PHP或JQuery中实现这一点?
  • 有没有办法强制将页面缓存一段时间,以便浏览器不重新渲染?

像往常一样,非常感谢任何正确方向的帮助或指示!

修改

我已经研究过AJAX解决方案并且没有找到任何解决方案,因为我不想更新页面上的任何对象。我正在寻找满足$ event_time变量时重定向的页面。有没有办法在PHP中执行此操作?

1 个答案:

答案 0 :(得分:0)

在2020年,您可以使用turbolinks.jspjax来完成单页应用程序。