1

我正在寻找设计模式、框架或技术来实现满足这些要求的网页:

  • 网页在首次加载时静态呈现,不需要任何 JavaScript 支持。
  • 如果启用,当用户尝试点击链接时,应该使用 JavaScript 来加载网站的新部分,并使用 HTML5 历史 API 或同等功能相应地更改 URL。
  • 如果不可用,则应通过链接静态加载新页面。
  • 显然,我不应该两次编写代码。这会导致不一致。

我一直在思考这个问题,但我没有给出答案。

编辑:MVC 听起来是解决这个问题的好开始,但我绝对想避免两次编写视图代码。

4

2 回答 2

1

这需要后端支持,因此后端的技术很重要。

也就是说,这听起来很像 Rails 库 Turbolinks: https ://github.com/rails/turbolinks/

仅在前端,支持 JS 和非 JS 被称为优雅降级,网上有很多关于它的文章。

于 2013-05-23T22:21:42.197 回答
0

如果我了解您的问题,我认为这些链接会有所帮助:

http://www.implico.pl/lang-en/ajaxgetcontent_dynamic_ajax_website,7.html

http://www.asual.com/jquery/address/

还有一个 github 项目(browserstate/history.js)来处理这个问题,但我没有发布更多链接,我需要声誉:p

于 2013-05-24T00:44:20.307 回答