何时适合使用AJAX?
使用AJAX有什么优缺点?
回答我的上一个问题:有些人似乎非常坚定,如果情况合适,我应该只使用AJAX: Should I add AJAX logic to my PHP classes/scripts?
回应Chad Birch的回答: 是的,我指的是在开发一个“标准”网站时会采用AJAX来获得它的好处,并且不会被其应用程序削弱。以一种会破坏搜索排名的方式使用AJAX是不可接受的。因此,如果“保持网站完整”需要更多的工作,那将是一个“骗局”。
答案 0 :(得分:8)
这是一个非常大的主题,但您应该使用AJAX来增强用户体验,而不会让网站完全依赖它。请记住,搜索引擎和其他一些访问者将无法执行AJAX,因此如果您依赖它来加载您的内容,那么这对您不利。
例如,您可能认为让用户访问您的博客会很好,然后让页面在AJAX已经存在的情况下动态加载最新的文章。但是,当Google尝试为您的博客编制索引时,它只会获得空白网站。
找到与此主题相关的资源的良好搜索词是“渐进增强”。那里有很多好东西,花一些时间关注周围的链接。这是一个让你开始的人:
http://www.alistapart.com/articles/progressiveenhancementwithjavascript/
答案 1 :(得分:5)
当您只是更新页面的一部分或者可能执行不更新页面的操作时,AJAX可能是一个非常好的工具。对于像这样的东西,它比整个页面刷新更轻量级。相反,如果您的整个页面重新加载或者您更改为其他视图,您实际上应该只链接(或发布)到新页面,而不是通过AJAX下载并替换整个内容。
使用AJAX的一个缺点是它需要javascript才能工作,或者你构建视图的方式使得UI在没有它的情况下仍然可以工作。这比通过普通链接/帖子做这更复杂。
答案 2 :(得分:2)
AJAX通常用于在页面已加载时执行HTTP请求(不加载其他页面)。
最常见的用途是更新部分view。请注意,这不包括刷新整个视图,因为您只能导航到新页面。
另一个常见用途是提交表格。在所有情况下,尤其是对于表单,重要的是要有好的方法来处理没有javascript或禁用它的浏览器。
答案 3 :(得分:2)
我认为使用 ajax 技术的优势不仅在于创造更好的用户体验,而且只为特定数据进行服务器调用的能力也是一项巨大的性能优势。
想象一下拥有一个巨大的带宽吞吐站点(如stackoverflow),用户完成的大部分导航都是通过页面重新加载和通过HTTP连续发送的数据完成的。
当然缓存和其他技术有助于解决带宽问题,但我个人认为每次发送大量HTML都是一种浪费。
缺点是SEO(不适用于基于高度的ajax网站)和禁用JavaScript的人。
答案 4 :(得分:1)
当您的应用程序(或您的用户)需要比传统网页提供的更丰富的用户体验时。
答案 5 :(得分:1)
Ajax为您提供了两件大事:
响应性 - 如果需要,您可以一次仅更新网页的某些部分(节省重新加载页面的时间)。例如,它还可以更轻松地分页表中显示的数据。
用户体验 - 这与响应性一致。使用AJAX,您可以添加动画,更酷的弹出窗口和特殊效果,为您的网页提供更新,更清洁,更酷的外观和感觉。如果没有人认为这很重要,那么请关注iPhone。用户体验将人们引入应用程序并使他们想要使用它,这是确保应用程序成功的关键步骤之一。
有关一个好的案例研究,请查看此站点。 AJAX效果就像在发布时为你的新答案设置动画,弹出窗口告诉你你不能做某些事情,并提示自你开始自己的答案以来已经发布了新的答案,这些都是吸引人们进入这个网站并使其成功的一部分。 / p>
答案 6 :(得分:0)
当您想要重新加载部分页面而不将所有信息重新发布到服务器时,主要使用Ajax。
缺点:
优点:
答案 7 :(得分:0)
Javascript应始终只是您网站功能的补充。您应该能够使用和导航网站,而不涉及任何Javascript。您可以使用Javascript作为现有功能的补充,例如,以避免整页重新加载。这是可访问性的重要因素。永远不应将Javascript用作在您的网站上覆盖或完成请求的唯一可能性。
由于AJAX使用Javascript,这同样适用于此。