0

We have WCAG standard means site should run without javascript.

http://www.w3.org/TR/WCAG/

Is it possible to check WCAG is enabled or not in PHP?

When javascript is disabled :- I have set some php session variables 
When javascript is enabled  :- I want to reset those php session variables

How can i do that?

4

2 回答 2

2

WCAG 是一套指南,而不仅仅是一个开/关开关。它强调了最佳实践,以确保您的网站可供残障人士使用。从高层次来看,JavaScript 的要求是标准的,因为在过去,没有多少辅助技术设备或程序可以与 JS 交互。因此,如果禁用 JavaScript,用户将体验该网站。这就是为什么<noscript>为脚本元素使用好的标签而不是粗鲁的评论很重要。

今天流行的辅助技术可以很好地与 JavaScript 交互。这一切都取决于您使用 JavaScript 所做的事情以及您如何编写动作脚本。

W3C 提供了37 种技术用于客户端脚本。WebAIM 的JavaScript Accessibility 文章中有很多信息。

于 2012-07-01T21:32:31.897 回答
1

如果您询问是否可以在服务器端检测是否启用了 Javascript,那么答案是:技术上没有。

由于服务器进程不在浏览器进程中,因此服务器无法检查浏览器中的功能或设置是否启用/存在。

但是,您可以尝试模仿它。例如,如果禁用 javascript(通常),则不会从服务器端加载脚本。您还可以插入 javascript,这些 javascript 将对您的服务器执行特制的请求,以便您知道某些内容已被禁用。

<noscript><img src="http://example.com/session-trigger-js-disabled.php?.gif" width="0" height="0"></noscript>
<script src="http://example.com/session-trigger-js-enabled.php?.js"></script>

注意: $_SESSION在 PHP 中可以是阻塞的。该<script src="url">标签也会被阻止,因此请注意不要造成“死锁”,这会降低用户对您网站的体验。


更轻量级的方法可能是设置 cookie 并在启用 javascript 时更改它。cookie 可以被 PHP 读取,它们的性质是不阻塞的,你不需要为此浪费会话。

于 2012-06-28T09:37:33.603 回答