你的网站应该在没有JavaScript的情况下工作吗

你的网站应该在没有JavaScript的情况下工作吗,javascript,browser,Javascript,Browser,我们正在开发一个web应用程序,供internet上的外部客户端使用。我们需要支持的浏览器是IE7+和FF3+。我们的要求之一是尽可能使用AJAX。考虑到这一要求,我觉得我们不应该满足未启用javascript的用户,尽管团队中的其他人不同意 我的问题是,在这个时代,我们是否应该被要求满足那些没有启用javascript的用户 我的问题是,在这个时代,我们是否应该被要求满足那些没有启用javascript的用户 是的,当然,如果AJAX功能是站点工作的核心。如果你不这样做,你实际上是在拒绝那些没

我们正在开发一个web应用程序,供internet上的外部客户端使用。我们需要支持的浏览器是IE7+和FF3+。我们的要求之一是尽可能使用AJAX。考虑到这一要求,我觉得我们不应该满足未启用javascript的用户,尽管团队中的其他人不同意

我的问题是,在这个时代,我们是否应该被要求满足那些没有启用javascript的用户

我的问题是,在这个时代,我们是否应该被要求满足那些没有启用javascript的用户

是的,当然,如果AJAX功能是站点工作的核心。如果你不这样做,你实际上是在拒绝那些没有启用Javascript的用户访问你的网站,尽管这是一个相当小的比例(取决于实际情况)

我个人一直关闭JavaScript,因为我不信任很多网站

然而,由于您的用户已经明确要求您的应用程序,您可以假设他们会信任它,并且没有必要做额外的工作


更重要的是,如果你有强烈的AJAX亲和力需求,这个问题似乎就够奇怪了。

10多年后,值得注意的是,我的前两个要点已经变得无关紧要,第三个(可访问的浏览器做得更好)和第四个(谷歌运行更多的js)的情况也略有改善


在公共互联网上,可能有比你想象的更多的用户在使用javascript时遇到问题:

  • 移动浏览器(智能手机)通常有非常糟糕或有缺陷的javascript实现。这些通常会在统计数据中显示在那些确实支持javascript的人的一边,即使他们实际上不支持javascript。这正在变得更好,但仍然有很多人被使用非常旧的Chrome版本或糟糕的webkit克隆的旧的或缓慢的android手机所困扰
  • 像NoScript这样的东西正变得越来越流行,所以您至少应该为这些用户提供一个不错的初始页面
  • 如果您的客户在任何方面都是美国政府的一员,那么法律要求您支持屏幕阅读器,因为屏幕阅读器通常不支持javascript,或者做得不好
  • 搜索引擎最多只能运行一组有限的javascript。你想在没有javascript的情况下工作得足够好,这样他们仍然可以为你的网站编制索引
当然,你需要了解你的受众。你可能正在为一个公司内部网工作,你知道每个人都有javascript(尽管即使在这里,我也认为这些网站越来越多地提供给浏览器未知/不受限制的远程工作者)。或者,您可能正在为无人拥有的盲人社区构建应用程序。在公共互联网的情况下,您通常可以估计大约95%的用户会以某种方式支持它(以下链接中有人引用了该来源).这个数字听起来很高,但可能会产生误导;如果你不支持javascript,20个访问者中就有1个会被拒绝

请看这些:


我认为这取决于您将要构建的web应用程序的类型。例如,在电子商务应用程序中,签出过程可能在没有java脚本的情况下工作,因为有一些人会停用js进行签出(根据我们的经验).在我看来,在web 2.0应用程序中,没有必要支持非js浏览器体验。
为两者开发也会使开发过程复杂化,而且成本更高。您的web测试工作量增加了一倍(使用和不使用js进行测试)在规划阶段也会有不同的想法。

我认为这取决于你所瞄准的细分市场,如果你是针对科技人群,比如Stackoverflow.com,或者slashdot,那么你很可能希望用户安装并激活JS

其他具有中等技术意识受众的网站可能会因为用户对基于JS的攻击了解得足够多而停用了JS,但没有足够的知识启用Scriptblock(或其他类似浏览器)


不了解技术的观众可能与技术人群在一起,因为他们可能不知道如何禁用JS,或者不知道为什么要禁用JS,不管风险有多大。

你应该权衡选择,问问自己:

1) 关闭javascript的用户百分比是多少。(据统计,全世界只有5%的人关闭或不可用。) 2) 那些用户愿意打开它吗 3) 在那些不愿意打开它,或切换到另一个启用了javascript的浏览器或设备的用户中,损失的收入是否超过了构建单独的非javascript版本的努力


我本能地说,大多数时候答案都是否定的,不要浪费时间建立两个站点

简而言之,您应该满足未启用JavaScript的爬行器的需求,但只满足为您想要公开的数据编制索引所需的程度。您对IE7+和FF3+的浏览器要求排除的人数远远超过禁用JavaScript的总人数。在那些确实禁用它的人中,绝大多数人知道如何在必要时启用它。

前几天我问了自己同样的问题,并得出了答案,为了使用我的应用程序,一个必须启用Javascript。我还检查了各种Ajax支持的站点。甚至堆栈溢出


但考虑到这一事实,我也相信您确实需要支持某种程度的史前应用程序。主要思想是当用户没有启用Javascript时,不要让应用程序中断。应用程序仍应显示相关数据,但其功能将受到限制。

这是我几天前刚刚考虑的问题。这里有一些信息

  • 在Google Chrome中没有任何方法(菜单/选项