【问题标题】:Do we still need backup code for people who have javascript disabled? [closed]我们还需要为禁用 javascript 的人提供备用代码吗? [关闭]
【发布时间】:2010-05-25 13:34:18
【问题描述】:

我在观看的教程中听说过,如果禁用 javascript,某些事情将无法正常工作。偶尔我会看到解决方法。

问题是,这些是否相关?除了最古老的手机之外,我无法想象现在还有人没有启用 javascript 的浏览器,而且您的页面很可能无法在它们上正确呈现。

人们还在为被禁用的 javascript 编写备用代码吗?

编辑:作为测试,我关闭了 javascript。 Facebook 不工作。

编辑:我了解视障用户,但人们是否关心(苛刻,是的)他们的体验是否有问题?不要听起来不尊重,但不遵守严格的标准也会疏远使用 Internet Explorer 4 和 5 的人,但我们似乎并不关心他们......?

编辑:考虑到有多少人使用 JQuery 和其他 groovy 插件库,说人们应该这样做似乎是一种非常自然的反应。

编辑:我尝试了一堆财富 500 强网站,到目前为止,我尝试过的网站中大约 70% 都坏了

Dell
Walmart
Fedex
Intel
Coca Cola

【问题讨论】:

  • 观众是谁很重要。您应该能够使用网络分析工具来衡量这一点。
  • Facebook 在处理隐私方面也有着可怕的名声,并且被 Farmville 覆盖。他们几乎不是如何建立优质网站的典型代表。
  • 嗯,我必须启用 Javascript 才能回复您的评论...您认为该网站上的大多数开发人员实际上都会编写解决方法吗?
  • 如果你失明了(我显然不希望这样),然后回头看看你的问题,你可能会恨自己。
  • @SLC 我很好奇;如果您要忽略社区的建议并接受您想听到的答案,为什么还要首先提出这个问题?

标签: javascript


【解决方案1】:

是的,我们仍然需要为禁用 JavaScript 的人提供备用代码。

  • JavaScript 常用于破坏屏幕阅读器(很多屏幕阅读器用户禁用它)或导致更改显示在屏幕放大镜之外。
  • JavaScript 仍然是利用浏览器安全漏洞的最大攻击媒介之一。
  • No-Script 等插件越来越受欢迎。
  • 搜索引擎往往不会执行它(因此您不想将内容隐藏在它后面)

我更愿意将其视为foundation 而不是备份。

我了解视障用户,但人们是否关心(严厉,是的)他们的体验是否有问题?

讨厌的人不会。

法律(在许多司法管辖区)都有。

不要听起来不尊重,但不遵守严格的标准也会疏远使用 Internet Explorer 4 和 5 的人,但我们似乎并不关心他们......?

IE 4/5 有:

  • 市场份额比没有 JS 的用户小
  • 许多安全漏洞
  • 他们自己的出版商不支持

【讨论】:

  • 是的,他们这样做,或者是的,这很重要?
  • +1 以获得良好的基础链接
  • 是的,他们的市场份额确实较小。更多人这样做,但“过时”比“IE 4/5”更广泛。如果每个使用 jQuery 和 SO 的人都能制作出高质量的网站(尤其是考虑到一些问题),我会感到非常惊讶。请注意,我没有使用“仅”这个词。
  • 嗯,戴尔、联邦快递和沃尔玛可能会这样做。无论如何,这里存在哪些法律和道德问题?我的房子没有轮椅通道,但我没有歧视人,只是没有。我并没有积极排斥任何人。优雅地回退并测试所有内容两次所付出的努力可能并不保证少数人愿意使用屏幕阅读器查看您的网站,更不用说那些实际与您开展业务的人了。
  • 你家大概不向公众提供服务。优雅地回退所需的努力并不像某些人想象的那样多。
【解决方案2】:

作为一名开发人员,我不再担心 1% 的用户会关闭 Javascript。这太耗时了,开发时间也太昂贵了,不能浪费在这些废话上。 AJAX 节省了大量的带宽,直接转化为 $$$ 节省,从而使利润更高。如果我每 100 个用户就失去一两个网站的潜在用户,那么失去的一两个用户的开发成本将远远超过他们可能带来的潜在收入。

尝试关闭 Javascript 并登录 Facebook,然后它就变成了一个非常糟糕的网站。如果它对 Facebook 来说足够好,那对我来说也足够好了。

【讨论】:

  • 您估算 1% 的依据是什么?我的经验表明这个数字要高得多。
  • 我有 javascript 在用户驱动器上创建一个简单的 cookie,然后我让服务器(通过 Perl 脚本)读取 cookie 以查看它是否存在。如果 Perl 没有找到 cookie,我会在导航栏上方显示一条消息,表明该站点需要 javascript 来运行其大部分功能。由于我正在运行一个大量使用的自定义书面讨论论坛,因此我将用户在数据库中的站点上的每次点击记录下来,并将这个 cookie 值记录为字段之一。分析数据,我发现 cookie 平均丢失了 1% 到 2%。
  • 您的测试网站是否在没有 JavaScript 的情况下功能齐全?据推测,由于功能损坏而过于恼火的用户只是离开了您的网站并且再也没有回来,因此与启用 JavaScript 的用户相比,他们计算的页面浏览量要少得多。这 1% 是否还计算独立用户或页面浏览量?
【解决方案3】:

支持禁用 JavaScript 的网站是个好主意,但没有太大帮助,而且价值值得怀疑,恕我直言

几乎不可能设计一个没有 java 脚本的健壮网站,而那些禁用 JS 的网站,无论出于何种原因,都可能对用户体验不抱太大希望。因此,如果您正在为那 1% 的人口编写代码,那么您别无选择。但是对于我们大多数人来说,JS 的存在是理所当然的。可访问性是一个不同的问题,有其自身的挑战。当我为 Hewlett-Packard 做网站时,他们必须满足严格的可访问性标准,而且除了非常基本的网页之外,很难创建任何东西。我不希望任何人这样做。

【讨论】:

  • 这简直是垃圾。越简单的东西,它往往就越健壮。 JavaScript 几乎总是会降低简单性。
  • “越简单的东西,它就越健壮”.. 呵呵。就像 c++ 嘿 .. 超级健壮 .. 如此简单易学。这就是为什么这么多人拥有 c++ 资格的原因
  • 我不知道你在说什么@gerdi,C++ 非常健壮,非常简单,而且很多人确实有资格。
  • 我通常禁用 JavaScript,因为我不喜欢广告。似乎大部分只适用于 JavaScript。我不认为只有 1% 的人阻止/尝试阻止广告。
【解决方案4】:

我对这里的许多人有不同的看法。在某些情况下,我认为您不必关心,尤其是当您的网站针对特定人群或意味着大量工作时。

如果您参考:

http://visualrevenue.com/blog/2007/08/eu-and-us-javascript-disabled-index.html


(来源:visualrevenue.com

您可以看到年复一年启用 Javascript 的浏览器比以往任何时候都多,这与其他答案的说法相反。 2007 年为 96.9%。

所以你失去了 3% 的潜在观众,那又如何,你的广告活动会造成比这更大的损失!

【讨论】:

  • 这些是 W3Schools 本身的统计数据——认为 W3Schools 是学习的好地方的一部分用户并不是一个特别有用的样本。
  • 编辑:添加了更好的分析。
  • 这真的取决于您的目标受众。如果您要迎合军事承包商,浏览器功能通常会受到更严格的限制。由于这个原因,我们仍然必须支持没有 JS 的 IE6。
  • 同意,这就是我说一些场景的原因。总的来说,不要出汗!
  • visualrevenue.com 被 uBlock Origin 屏蔽,因为它是跟踪服务器...
【解决方案5】:

是的。尤其是在 508 和 WCAG 合规性方面。虽然创建可访问 JavaScript 的技术刚刚起步(请参阅 ARIA),但开发人员仍应以不需要 JavaScript 的方式对网站进行编码。

http://www.w3.org/WAI/aria/faq

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

【讨论】:

  • 另一方面(不是我不同意),ARIA 实际上可以很好地工作,并且如果被利用可以提供更好的可用性。使用屏幕阅读器系统和其他辅助技术的残疾人通常也有动力保持最新状态。对于那些希望最大限度地提高其应用程序的可访问性的人来说,这绝对是值得研究的事情。
  • 只要有升级的动力,一份 JAWS 标准的成本大约是 Windows 的 10 倍。
【解决方案6】:

所有其他问题都涵盖了大部分要点,但我会附和这一点:在没有 javascript 的情况下让您的页面优雅地降级并不是什么大问题。如果你有一些超级奇特的 ajax-infested 实时彗星风格的应用程序,如果没有 javascript 真的无法运行,你至少应该呈现一个很好的消息,表明需要 javascript。

【讨论】:

    【解决方案7】:

    这取决于您的受众和网站类型。

    例如,盲人或使用文本浏览器的人不会访问图形艺术家作品集。所以在这种情况下,构建好的可降解 JS 就不是那么重要了,特别是因为它很可能会被用于图形效果。

    另一方面,如果您正在开发一个新闻网站,并且您决定(无论出于何种原因)使用 JS 动态加载您的新闻,那么您绝对应该让它可降解。另外,请记住,索引引擎的蜘蛛在索引页面中加载 JS 的内容时可能会遇到困难。

    归根结底,在大多数情况下,对网站进行编程以使其在没有 JS 的情况下也能正常工作并不难。如果您正在动态检索内容,您已经拥有加载内容的服务器端代码,您只需要适应页面的调用方式。 表单也一样,你可以通过 AJAX 或普通 POST 发送内容,后端几乎相同,因此再次易于实现。

    当然,即使是纯图形的 JS 代码也不会出现问题。

    【讨论】:

      【解决方案8】:

      我最近的经历:

      我的前主管认真地声称,由于 Google Analytics(分析)告诉我们“87% 的用户启用了 Java,只有不到 3% 的用户使用 IE6”,因此我们不必担心支持旧版浏览器或禁用 JavaScript 的用户。

      问题 1:Java 不是 JavaScript。

      问题 2:为了让 Google Analytics(分析)跟踪点击,浏览器必须启用 JavaScript,因为 GA 接口是一个 JS 包含。 GA 不知道也不能知道禁用了 JS 的用户,这可能会严重歪曲其报告。

      问题 3:我们最大的客户之一要求所有工程师都使用禁用 JS 的 IE6。

      问题 4:老板(当时)不知道如何阅读分析报告。

      如果您想了解这种支持对您的业务有多么重要,最好从 IIS 日志开始。几乎所有与浏览器上限相关的内容都由 IIS 存储。我定期将日志导入 SQL Server 并从我的管理站点运行一些基本报告,每当有人开始建议我们对 jQuery BS 发疯时,这些报告都会派上用场。

      如果您决定开始构建复杂的、依赖于脚本的界面,请确保您的界面优雅降级,并且在禁用 JS 时不会删除所需的功能。

      【讨论】:

      • 我的 Apache 没有任何“IIS 日志”。 :)
      【解决方案9】:

      这不仅仅是浏览器是否能够执行javascript的问题,而是用户是否出于某种原因禁用了它。

      例如,您需要注意视力受损的用户。此类用户可能会禁用 javascript,因为这些效果会混淆他们的屏幕阅读器软件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-09-25
        • 1970-01-01
        • 1970-01-01
        • 2012-12-19
        • 1970-01-01
        • 2014-07-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多