我正在构建一个Rails 4应用并使用Turbolinks Classic(还没有升级到Turbolinks 5)。
我想在加载新页面时向我的页面添加一个微调动画,所以在我的JS文件中我添加了:
$(document).on "page:fetch", ->
$("#main").html("<div class='page-loader-container'><div class='spinner spinner-primary'></div></div>")
#main
是我应用核心的容器。
从链接到链接时,这很有用; Turbolinks火了,旋转器取代了内容,当Turbolinks获得新内容时,它取代了所有内容。
但是,当我使用浏览器后退按钮时,会显示微调器,但缓存的HTML永远不会替换页面。
我查看了Turbolinks文档以及jQuery插件文档,但无法解决这个问题。
我尝试做的只是在Turbolinks实际获得新页面时执行我的微调器代码;从缓存加载页面时,我不应该需要一个微调器,因为它应该发生,因此用户不需要通知。
更新2016-12-14 13:40
当我使用Turbolinks.enableProgressBar();
时,进度条按照我的预期运行:它在选择新页面时加载,但在加载缓存页面时根本不显示。我现在正在使用它,并且#34;工作&#34;。
然而,我想深入了解源代码,并了解他们如何处理进度条的事件,因为我认为这些是我想要用于我的事件。旋转器。
答案 0 :(得分:0)
这个github页面在他的README文件中有一些很好的细节。我想知道这是否有助于特别是页面缓存部分:
https://github.com/turbolinks/turbolinks-classic#page-cache
我还认为Events表非常整洁。 (页面缓存上面的几个部分)