0

可能重复:
检查是否使用 PHP 启用了 JavaScript

我需要一种方法来检测是否在 codeigniter 框架的用户代理中启用或禁用了 javascript

4

3 回答 3

1

您无法直接在服务器端检测到这一点。请查看本文以获取替代解决方案:http ://www.untwistedvortex.com/detect-javascript-enabled-php/

于 2012-10-01T14:52:27.660 回答
1

您不会通过 HTTP 标头获得此信息。但我有一些解决方法:

您可以将此信息存储在用户会话中。默认情况下,您建议禁用 JS。第一个交付的页面应该对脚本执行 Ajax-Call,该脚本告诉 USER-Session,Javascript 已启用。

当然,这有一些缺点:

  • 第一次 Page-Call 始终是无脚本的
  • 如果用户突然禁用 Javascript,您不会得到信息
  • 如果您在脚本版本和 noscript 版本之间存在很大差异,搜索引擎可能会对您的页面进行评分

有时,如果 JS 启用与否,在 CSS 中拥有信息就足够了。你可以这样做:

<head>
    <script type="text/javascript">
        // Jquery version
        $(function() {
            $('body').removeClass('noJs');
        });
    </script>
    <style type="text/css">
        .noJs #hello {
             display: none;
        }
    </style>
</head>
<body class="noJs">
    <div id="hello">Hello</div>
</body>
于 2012-10-01T15:27:42.690 回答
0

在 CodeIgniter 或其他框架/普通 PHP 中无法进行可靠的检测。

此外,该信息不是标准浏览器标头/用户代理的一部分。

于 2012-10-01T14:53:00.693 回答