我在此之前问过这个问题(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。
谢谢, 比尔
答案 0 :(得分:0)
答案结束了,当我尝试使用它时,documnet.referrer没有值,所以我必须在我的onload事件中获取document.referrer值并保存它。
var myReferrer = document.referrer;
视频播完后,我可以像这样使用它:
window.location.href=myReferrer;
非常感谢在这里和之前帮助过的所有人。