【发布时间】:2012-10-31 11:43:51
【问题描述】:
我想检查是否在 Ruby on Rails 中的页面加载时启用了 javascript 和 cookie。因此,如果有人试图打开它,网站应该会显示一条他无法继续进行的消息。
【问题讨论】:
标签: ruby-on-rails
我想检查是否在 Ruby on Rails 中的页面加载时启用了 javascript 和 cookie。因此,如果有人试图打开它,网站应该会显示一条他无法继续进行的消息。
【问题讨论】:
标签: ruby-on-rails
您可以使用<noscript> ... </noscript> 标签。更多信息请查看here。
【讨论】:
如果你需要知道这个服务器端,你可以通过javascript设置一个cookie。如果 rails 无法读取它,则说明用户没有启用 cookie 或 javascript。
【讨论】:
<noscript> 标签似乎不适用于 chrome ScriptSafe 等脚本拦截器。对于这种情况,我找到了一种解决方法:创建一条已删除的警报消息,以防 javascript 运行良好。
这是 id="noscriptmessage" 的警报消息:
<div id="noscriptmessage" style="color:red">
This site requires javascript enabled!
</div>
如果 javascript 已启用且未被阻止,则以下脚本将删除该消息:
<script>
document.getElementById("noscriptmessage").innerHTML="";
</script>
确保在消息之后找到脚本(例如,如果将脚本放在警告消息之前的标头中,它将不起作用)。
【讨论】: