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永远不会隐藏加载器。 并且
标签中的内容将与叠加层一起显示。