我打算让我的网络应用程序非常AJAX。
在此之前,我想知道人们对这些网站的看法。是否有任何重要原因不这样做?
BTW,无需提及SEO原因。此外,我认为这些好处弥补了这样一个事实,即没有javascript的人会有有限的经验(尽管我很乐于相信)。答案 0 :(得分:15)
这取决于您打算如何使用它,IMO。
1)如果没有它,网站绝对会失败,您将排除禁用脚本的用户。我认为在许多情况下,为无脚本用户限制但不删除功能是公平的(例如,如果禁用了脚本,Google不会自动完成搜索;它不能......但是基本搜索仍然有效。)
2)需要在正确的地方使用正确的技术。例如,如果将数千个元素转储到ASP.Net UpdatePanel中,它将表现得非常糟糕。
3)我正在成为一个越来越大的内容粉丝,它在页面上以小块加载,不需要完全刷新NOR是否需要再次执行整个页面。这很适合SOA,但更容易受到#1的限制。
4)编辑:不要创建(由于AJAX)意外行为的UI元素。例如,我曾经构建了一个只在切换时填充的下拉列表。由于延迟和DOM创建时间,它没有响应。此外,大小通常会根据动态添加的元素而改变。您可以提出解决这些问题的方法,但这仍然是对该技术的错误使用。
答案 1 :(得分:6)
AJAX是一个工作的工具。如果您的应用程序最适合该工具,请使用它。
编辑 - 只需确保权衡得当。此外,如果您需要,使用AJAX的任何内容都不会阻止您准备好非ajax备份...
答案 2 :(得分:4)
显然,有很多流行的网站都依赖于AJAX,所以如果使用得当,也无需避免。但是,有些事情需要考虑:
答案 3 :(得分:3)
这取决于你如何使用AJAX。在页面呈现时您必须等待的页面,然后在脚本执行并加载实际内容时等待另外10秒,让人们生气。使用AJAX快速加载并做得很好的页面当然很好。
搜索引擎优化是一回事,但在您的网站中查找内容的能力则是另一回事。您必须考虑让Google为您的内容编制索引。因此,您仍然需要一个“纯文本”版本,其中链接表现为链接。
答案 4 :(得分:1)
深度链接可能是Ajax重站点的问题。有很多方法(即使用url-hash技术),但这些并不总是安全的。
答案 5 :(得分:1)
位于地球另一端的用户,物理强制执行的速度限制为3×10 8 m / s,如果您拥有大量UI,则会发现您的网站运行缓慢且无响应与AJAX进行互动。
从新西兰到加利福尼亚的典型数据包周转时间(往返)大约为200毫秒,用户界面应在100毫秒内响应,以免感到迟钝。