100%的Ajax网站

时间:2012-09-02 01:45:59

标签: ajax client-side

我一直在关注Hulu的新网站,从开发人员的角度(以及设计师的角度)我印象非常深刻。

我发现,除非你在http / https之间切换,否则你完全可以从json请求中获得内容。拥有这种级别的ajax同时保持浏览后退按钮支持以及允许直接访问每个URL是一个巨大的壮举。

我想创建一个这样的网站作为学习体验。是否有任何类型的框架可以给我这种支持?

我以为我可以......

  • 利用jQuery
  • 使用像KnockoutJS这样的客户端MVVM框架?
  • 使用ASP.NET MVC内容协商来提供由接受标头确定的html或json。
  • 使用相同的代码库。
  • 使用相同的模板进行客户端和服务器端呈现
  • 提供更新pagetitle / meta标签等的方法。

我仍在使用Ajax表单/小部件/ etc,我正在考虑使用json和客户端模板的页面级别ajax。

你怎么看?那里有任何框架吗?我可以遵循的任何模式?

2 个答案:

答案 0 :(得分:0)

最好首先建立一个没有AJAX支持的网站,然后再添加AJAX。这样做意味着:

  • 没有javascript的用户已经可以访问您的网站
  • 用户可以直接访问任何网址。

添加AJAX支持可以通过各种JavaScript库来完成。为了能够呈现json内容,您需要查看 javascript模板。当你添加AJAX支持(文件扩展名.ejs)时,你甚至想在服务器端使用javascript模板。这可能需要一些适当的库来在服务器上运行javascript。

当您添加AJAX支持时,您将需要使用“History.js”库来进行浏览器后退/转发/历史记录支持。

毫无疑问。这是一个巨大的项目(除非您的网站只有几页)。因此,需要花费很长时间才能将所有AJAX支持添加到最佳标准中。

答案 1 :(得分:0)

回答有关使用相同模板服务器端和客户端的要点:请查看dust。它最初由akdubya开发,但后来被linkedin采用和增强。他们使用它在移动应用client side上呈现模板。就个人而言,我已经在服务器端使用它,它运行良好。