你的网站应该没有JavaScript吗?

时间:2009-07-05 13:29:35

标签: javascript browser

我们正在开发一个将由互联网上的外部客户使用的Web应用程序。我们需要支持的浏览器是IE7 +和FF3 +。我们的一个要求是尽可能使用AJAX。鉴于此要求,我觉得我们不应该在没有启用JavaScript的情况下为用户提供服务,但团队中的其他人不同意。

我的问题是,如果在这个时代,我们应该被要求为没有启用JavaScript的用户提供服务吗?

11 个答案:

答案 0 :(得分:37)

公共互联网上的用户数量可能比您想象的要多得多:

  • 移动浏览器(智能手机)通常有非常差或错误的javascript实现。这些通常会显示在那些支持javascript的人的统计数据中,即使它们实际上没有。这种情况越来越好了,但仍然有很多人坚持使用旧版或慢版Android手机以及旧版本的Chrome或糟糕的webkit克隆。
  • 像NoScript这样的东西越来越受欢迎,所以你至少应该为这些用户提供一个不错的初始页面。
  • 如果您的客户与美国政府有任何关系,那么法律要求您支持屏幕阅读器,这些阅读器通常不会执行javascript,或者做得不好。
  • 搜索引擎,最好,只运行一组有限的javascript。你希望在没有javascript的情况下工作得很好,以允许他们仍然为你的网站编制索引。

当然,您需要了解您的受众群体。您可能正在为公司内联网工作,在那里知道 每个人都有javascript(尽管在这里,我认为这些网站可供远程工作者使用的趋势越来越明显使用未知/不受限制的浏览器)。或者您可能正在构建盲人社区的应用程序,其中没有人拥有它。在公共互联网的情况下,您通常可以认为大约95%的用户会以某种方式支持它(在下面的链接之一中由其他人引用的来源)。这个数字听起来很高,但可能会产生误导;转过来,如果你不支持javascript,你就会在20岁时拒绝1位访客。

见这些:

答案 1 :(得分:8)

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

1)有多少百分比的用户关闭了javascript。 (根据this site,世界上只有5%的人关闭或无法使用它。) 2)那些用户是否愿意打开它 3)那些不愿意打开它,或者切换到另一个启用了javascript的浏览器或设备,收入损失多于建立单独的非JavaScript版本的收入?

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

答案 2 :(得分:4)

  

我的问题是,如果在这个时代,我们应该被要求为没有启用JavaScript的用户提供服务吗?

是的,当然,如果 AJAX功能是您网站运作的核心。如果你不这样做,你实际上是在拒绝那些没有启用Javascript访问你网站的用户,虽然这个比例很小(我相信<5%),但这意味着他们将无法完全使用您的网站,因为他们无法使用核心功能。

当然,如果您使用AJAX做更多琐碎的事情,只是增强了用户体验,但实际上并不是网站核心功能的核心,那么这可能不是必需的。

答案 3 :(得分:3)

这有点像击败一匹死马,但我肯定会去做,肯定。

我认为可能有两种基本方法:

1

使用ajax(基本上, javascript)增强体验 用户,同时确保,那 所有应用程序的功能 没有javascript的工作。

当我    遵循这个原则,我开发了    界面分为两个阶段 - 第一阶段    没有考虑javascript    (比方说,使用框架,但没有    知道javascript)然后    通过添加来增加某些工作流程    ajax-y验证(不喜欢纯粹的js    验证,抱歉)等等。

这意味着,如果用户禁用了javascript,则您的应用不会因此而中断或无法使用。

2

充分利用javascript,“没有javascript - 没有去”的风格。如果javascript不可用,则用户将根本无法使用您的应用程序。重要的是要注意,在我看来,没有中间立场, - 如果你想要同时在两个世界中,你做了太多额外的工作。消除支持no-javascript用户的限制,显然增加了创造更丰富用户体验的机会。它使创建体验更容易。

答案 4 :(得分:2)

真的取决于。

我个人一直关掉JavaScript,因为我不相信很多网站。

但是,由于您的用户明确询问了您的应用程序,您可以认为他们会信任它,并且没有必要做额外的工作。

更多,如果你有强大的AJAX亲和力要求,这个问题似乎很奇怪。

答案 5 :(得分:1)

我认为这取决于您要构建的Web应用程序的类型。例如,在电子商务应用程序中,结帐过程应该可以在没有java脚本的情况下工作,因为有些人会停用js来检查(根据我们的经验)。在我看来,在web 2.0应用程序中,没有必要支持非js浏览器体验。 两者的开发也使开发过程复杂化并且成本更高。你有两倍的网络测试工作(使用和不使用js进行测试),并且在规划阶段也会有所不同。

答案 6 :(得分:0)

我认为这取决于你所瞄准的细分市场,如果你想要一个技术人群 - 比如Stackoverflow.com,或者slashdot-那么你可能会期待用户安装JS并积极。

其他具有内科技术意识的网站可能会让用户对基于JS的漏洞有足够的了解,因此已经停用了JS,但缺乏足够的知识来启用Scriptblock(或其他类似浏览器)。

非技术意识的受众可能与技术人群有关,因为他们可能只是不知道如何禁用JS - 或者他们可能想要的原因 - 无论风险如何。

答案 7 :(得分:0)

简而言之,您应该在未启用JavaScript的情况下迎合蜘蛛,但仅限于索引要向公众公开的数据所需的程度。您对IE7 +和FF3 +的浏览器要求排除的人数远远超过禁用JavaScript的总人数。那些禁用它的人中,绝大多数都知道如何在必要时启用它。

答案 8 :(得分:0)

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

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

答案 9 :(得分:0)

添加到此页面上的一些旧讨论。 Google现在正在搜索JavaScript:http://www.i-programmer.info/news/81-web-general/4248-google-now-searches-javascript.html

答案 10 :(得分:-1)

这是我几天前想到的问题。这是一些信息

  • 在谷歌浏览器中,浏览器内无法关闭Javascript。
  • 许多网站,包括Google等领先网站的网站,如果没有Javascript,将无法使用。
  • 根据统计数据,超过95%的访问者现在启用了Javascript。

这些统计数据让我思考。我是否必须为禁用Javascript的用户编写大量后台代码和所有内容?

我的结论是这样的。是的,我必须包含Javascript支持,但不是以理智为代价。即我可以把它放在低优先级。

所以我将支持非JavaScript浏览,但是我会在部署网站后构建大部分内容。