首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails 4+ Turbolinks: JS在头部还是在身体底部?

Rails 4+ Turbolinks: JS在头部还是在身体底部?
EN

Stack Overflow用户
提问于 2012-09-28 22:32:07
回答 2查看 4.3K关注 0票数 17

我习惯于将JS放在body元素的底部(根据HTML5Boilerplate),但是由于TurboLinks (在Rails 4中将是on by default )在每次请求时都会重新加载body (和标题),所以从现在开始将JS放在head中有意义吗?在这方面有没有什么像样的指南或最佳实践?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-28 22:59:04

另外,预编译的application.js (根据assets管道)在默认情况下处于打开状态。原因是,即使js在页面的其余部分之前加载,因为js总是相同的,它将从第二个请求开始从缓存加载,所以没有实际的理由再在主体的底部提供它。

票数 7
EN

Stack Overflow用户

发布于 2016-09-28 22:18:07

如果你使用的是Turbolinks 5,你现在可以把turbolinks放在你的身体底部(并遵循web dev渲染页面的最佳实践)。这对SEO也有很小的帮助。只需将脚本添加到正文的底部,然后添加

data-turbolinks-eval="false"

添加到脚本标记中。这将防止turbolinks在初始页面加载后进行评估。下面是如何使用javascript_include_tag完成此操作的

<%= javascript_include_tag 'application', 'data-turbolinks-eval' => 'false'%>

然后只需使用

$(document).on('turbolinks:load', function() { // code to be executed when use changes pages });

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12642045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档