Ruby on Rails,Javascript检测

我正在创建一个Web应用程序,它使用Rails内置帮助程序函数为站点添加ajaxfunction。 我不希望用户能够在没有JS的情况下使用该应用程序,因为它无法正常运行。

我需要能够阻止这一点。 如何在没有JS的情况下阻止用户加载我的任何页面?

我试图在布局中使用标签。 这会检测到JS的缺失,但仍会呈现视图。 将脚本标记放在yield附近会阻止呈现任何视图。

关于如何做到这一点的任何想法?

您可以在head元素中包含一个带有元刷新标记的noscript块。 例:

     

你可以在这里阅读有关元刷新的更多信息

希望这可以帮助

编辑:为了澄清,只有在为用户关闭JavaScript时, noscript标记才会运行。 因此,在这种情况下,如果关闭JS,用户将被重定向到http://yoursite.com/nojswarning.html 。 当然,您可以将其更改为您想要的任何网站上的任何页面。

简单的答案是通过JS加载整个应用程序。 这样,应用程序永远不会显示启用JS的人。

另一种方法是使用iframe启动页面,iframe将加载到JS检查页面。 所有页面都通过JS将用户重定向到应用程序的真实URL。 因此,如果用户没有JS,他们将不会被重定向(并且您可以通知他们他们需要带有

似乎有效。 我将默认设置为带有覆盖的小型加载器,如果客户端不支持javascript,则javascript永远不会隐藏加载器。 并且标签中的内容将与叠加层一起显示。