需要浏览器后退按钮来刷新某些内容(更改CSS),而无需刷新整个页面,例如gmail

时间:2019-12-30 20:20:18

标签: javascript django browser

我有一个Django项目,我在论坛主页上显示帖子标题列表。这是用户的典型操作。

  1. 用户单击帖子A的标题。
  2. 引导用户发布详细信息页面
  3. 用户单击浏览器后退按钮,然后返回带有帖子列表的论坛主页。
  4. (!重要)我想向用户显示论坛主页中已经阅读了某些帖子。
  5. 用户重复(1-4)

当前,我能够通过单击后退按钮时强制浏览器刷新页面来完成上述操作:

  • 1)跟踪帖子查看
  • 2)在论坛首页中,检查是否有特定帖子    被用户查看
  • 3)用户单击浏览器时(!重要)    后退按钮,我强制浏览器刷新页面。我使用Leonid Vasilev's answer from this post,复制粘贴到下面:
window.addEventListener( "pageshow", function ( event ) {
  var historyTraversal = event.persisted || 
                         ( typeof window.performance != "undefined" && 
                              window.performance.navigation.type === 2 );
  if ( historyTraversal ) {
    // Handle page restore.
    window.location.reload();
  }
});

我想要的不是刷新整个页面,而是仅更改特定的一个或多个帖子链接以显示该帖子已被用户阅读(例如gmail所做的事情)在台式机或移动网络上。我知道如何使用Ajax对喜欢/不喜欢/添加书签的帖子进行操作,但是我找不到解决方法。有什么帮助吗?谢谢!

0 个答案:

没有答案