【问题标题】:HTML5 reload page when moving back (redux)后退时的 HTML5 重新加载页面 (redux)
【发布时间】:2014-03-03 13:58:30
【问题描述】:

我之前在这里(HTML5 reload page when moving back)问过这个问题,但是回答和答案变得太混乱了,所以我重新开始。仍然没有工作。我想我会再问一次。

我正在使用 Moodle 2.6,但这并不是一个真正的 Moodle 问题。一个活动被定义为一个 URL。您单击该链接以获取 URL,然后它会转到一个 HTML5 页面,该页面只是一个定制的视频播放器。当视频结束时,它会回到 Moodle 课程页面。一切正常,但 Moodle 页面在使用 F5 刷新/重新加载页面之前不会反映此活动已完成。这是我用来检测视频结尾的 javascript 代码:

video1.addEventListener("ended", function() {
   history.back(1);
});

我尝试过使用许多不同的变体,例如 history.go(-1) 等,但似乎没有任何效果。

我之前的问题的回复者建议使用

location.href = document.referrer;

这没有用。我在右侧硬编码了我想返回的地址作为试用,它似乎工作正常。我以为我可以将地址从历史缓冲区中提取出来,但是我找不到直接访问历史缓冲区字符串以便使用它们的方法。

那么,有没有办法访问历史缓冲区 URL 字符串,或者您对如何返回上一页并刷新/重新加载此页面有更好的建议。我可以让它回去,但它不会刷新。我主要在 PC 上使用 IE,在 iPad 上使用 Safari。

谢谢, 比尔

【问题讨论】:

标签: javascript html


【解决方案1】:

答案是,当我尝试使用它时,documnet.referrer 没有值,所以我不得不在我的 onload 事件中获取 document.referrer 值并保存它。

var myReferrer = document.referrer;

视频结束后,我可以这样使用它:

window.location.href=myReferrer;

非常感谢在这里和以前提供帮助的所有人。

【讨论】:

  • 很高兴你找到了它。请将此问题和上一个问题标记为已回答(布鲁诺的答案毕竟是正确的)。
猜你喜欢
  • 2014-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-02
  • 2013-10-13
  • 1970-01-01
  • 2023-01-18
  • 2014-02-17
相关资源
最近更新 更多