【问题标题】:Progressive enhancement or separate markup渐进增强或单独标记
【发布时间】:2011-05-22 12:25:06
【问题描述】:

我不确定标题是否最好,但我想不出完美的描述性。这是我的场景。

我必须构建一个门户网站,该门户网站将采用 ajax 和 Javascript 提供的所有“花里胡哨”,同时对于可能没有 Javascript 和/或正在使用旧系统的用户仍然可以访问和使用。在我看来,我有两条路可以走。

  1. “渐进式增强”:通过这种方法,我们将拥有一组标记,它将作为一个功能齐全的经典 html 门户。然后,客户端库将增强现有标记以覆盖 html 功能并用高级 Javascript 功能取代它。

  2. 第二个想法是有两个客户端库,一个用于启用 Javascript 的门户,一个用于经典 HTML。

我看到了优点和缺点。

  1. 第一个方案为可维护性保留了较小的占用空间。我们有一组标记,没有重复或同步问题。我在这里看到的负面影响是代码可能会因为必须执行双重任务而变得混乱,并且更容易被破坏。

  2. 第二种情况很好,因为每个门户方面都可以根据自己的需要进行优化。显然维护两套代码会带来很多维护问题。

我目前倾向于方案 1,但方案 2 有一些我喜欢的积极因素,例如易于添加第三个选项。坦率地说,我在这两种可能性之间左右为难,因为两者都是可行的。哪种情况最有意义?

【问题讨论】:

    标签: html markup progressive-enhancement


    【解决方案1】:

    渐进式增强应该是这里的方法,但它是一个相当新的概念。 这实际上取决于您的用户的偏好。如果大多数人(或大部分人)预计会使用许多不同的手机 - 我建议使用图书馆进行渐进式增强。看看jQuery Mobile,它很有前途,很快就会发布。

    只有当应用程序的主要功能或优势需要 javascript 时,第二个想法才值得。然后为某些用户创建一个低端前端(:P)似乎是合理的。 Gmail 就是一个很好的例子。它的功能依赖于 JS,没有它们就没有什么有趣的东西,所以有一个糟糕的版本,即使在 lynx 中也能很好地工作。

    【讨论】:

    • 经过更多阅读后,我认为渐进增强(如果做得好)对于未来的维护会更好,并且它一般没有限制,除了一些没有考虑渐进增强的框架。
    猜你喜欢
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 2010-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多