在 Rails 应用程序中 URL 路径更改后,Scrollspy 不工作
Scrollspy not working after URL path changes in Rails App
在我目前正在开发的 Web 应用程序中,我有 Bootstrap 的 Scrollspy 以及滚动到顶部按钮。两者最初都工作正常,但在导航到我的应用程序的另一页并导航回来后,滚动完全被禁用。无法弄清楚是什么原因造成的。
您可以在 emeraldreview.herokuapp.com 查看它或在 https://github.com/jamesemcc/review-site-template
查看我的 repo
我不确定要包括哪些代码供您查看,所以我认为这是最简单的。感谢任何 help/advice!
这可能是 turbolink 的问题。在 app/assets/javascripts/application.js
中,替换
$(document).ready(function() {
// your code
});
和
$(document).on('turbolinks:load', function() {
// your code
});
Turbolinks 的工作原理是,每次在您的站点上单击 link 时,只需切换出 body 标记的内容。内容切换不会触发 jQuery 的 $(document).ready()
处理程序,但使用 turbolinks:load
事件应该可以解决问题。
希望对解决问题有所帮助,祝你好运!
在我目前正在开发的 Web 应用程序中,我有 Bootstrap 的 Scrollspy 以及滚动到顶部按钮。两者最初都工作正常,但在导航到我的应用程序的另一页并导航回来后,滚动完全被禁用。无法弄清楚是什么原因造成的。
您可以在 emeraldreview.herokuapp.com 查看它或在 https://github.com/jamesemcc/review-site-template
查看我的 repo我不确定要包括哪些代码供您查看,所以我认为这是最简单的。感谢任何 help/advice!
这可能是 turbolink 的问题。在 app/assets/javascripts/application.js
中,替换
$(document).ready(function() {
// your code
});
和
$(document).on('turbolinks:load', function() {
// your code
});
Turbolinks 的工作原理是,每次在您的站点上单击 link 时,只需切换出 body 标记的内容。内容切换不会触发 jQuery 的 $(document).ready()
处理程序,但使用 turbolinks:load
事件应该可以解决问题。
希望对解决问题有所帮助,祝你好运!