Php 检测禁用JavaScript的浏览器并为其分离站点?

Php 检测禁用JavaScript的浏览器并为其分离站点?,php,javascript,jquery,html,header,Php,Javascript,Jquery,Html,Header,可能重复: 我很好奇,如果用户禁用了JavaScript,其他人会认为什么是最可行的捕获方式。这里有两种我想使用的方法;如果有人有更好的想法或任何想法或事情,我应该注意,而把这些放在一起,请让我知道 第一种方法 使用JavaScript函数将变量传递给PHP 根据变量PHP编写JavaScript或非JavaScript版本 第二种方法 使用JavaScript函数将变量传递给PHP 根据变量的不同,PHP使用头重定向到JavaScript支持或非JavaScript支持的站点 我猜第一个是最

可能重复:

我很好奇,如果用户禁用了JavaScript,其他人会认为什么是最可行的捕获方式。这里有两种我想使用的方法;如果有人有更好的想法或任何想法或事情,我应该注意,而把这些放在一起,请让我知道

第一种方法

  • 使用JavaScript函数将变量传递给PHP
  • 根据变量PHP编写JavaScript或非JavaScript版本
  • 第二种方法

  • 使用JavaScript函数将变量传递给PHP
  • 根据变量的不同,PHP使用头重定向到JavaScript支持或非JavaScript支持的站点
  • 我猜第一个是最好的,因为用户不会被重定向出页面;然而,我很好奇,有没有更简单的方法来检测JavaScript是否被禁用或启用?我可以用PHP函数而不是JavaScript来实现这一点吗。使用上述方法只需假设,如果禁用了JavaScript,变量将不会被传递,PHP将输出站点的非JavaScript版本


    有任何记录吗?

    为什么不直接使用noscript标记向用户显示消息?


    除非您有更复杂的原因来判断javascript是否处于活动状态。通常,您只需在noscript标记中包装一条大消息,指示需要javascript,没有它就无法工作。简单的html,没什么特别的。

    不需要往返。应该能够在第一次请求时判断浏览器是否支持js。在get_browser的注释中有一个有趣的讨论(和代码片段列表)(这似乎有些过分,并且有一些配置要求)。同样,请阅读API文档,并仔细阅读注释


    您不需要PHP来完成这项工作,它都是HTML

    将javascript页面放在主站点上。在它的头部,您可以有一个noscript标记,其中包含对非javascript页面的元刷新(或者更好)

    使用一个标记并在该标记中有一个元重定向,这样没有JavaScript的用户就可以转到您的非JS版本

    因此,您的代码如下所示:

    <noscript>
    <meta http-equiv="refresh" content="0; url=http://foo.com/nojs">
    </noscript>
    

    这样,您的主站点是非js版本,如果支持JavaScript,它将使用

    重定向到js版本。我希望打印一个单独的站点,这样即使使用javascrpit,他们也可以在站点上导航。
    location.href='http://foo.com/js';