什么时候不在Web应用程序开发中使用AJAX?

And*_*rew 18 javascript ajax

我正在使用Zend Framework构建一个Web应用程序.我想要包含一些AJAX类型的表单和模式框,但我也希望我的应用程序尽可能地可访问.我希望我的应用程序可以通过AJAX增强,但是在没有AJAX的情况下也可以完全正常运行

所以作为一般准则......什么时候不应该使用AJAX?我的意思是,如果没有AJAX,我是否应该使我的应用程序可用?或者现在每个人都有支持AJAX的浏览器?

Dat*_*han 19

如果您的意思是ADA意义上的"可访问",AJAX通常是禁止的 - 您的网站应该仅使用标准(X)HTML和CSS提供其所有内容和核心功能.使用的任何JavaScript都应该只扩展核心功能,并且在没有启用javascript的浏览器的情况下,您的网站应该被编码为优雅地工作.

示例:如果您希望用户单击缩略图并获得图像的完整版本,则可以将缩略图设为链接.然后,onclick事件将触发一个JQuery方法,该方法取消链接的导航行为并弹出一个JQuery浮动div以在当前页面上显示图像.如果用户的浏览器不支持JavaScript,则onclick事件将永远不会触发,并且用户将在新页面中显示该图像.无论是否有脚本,核心功能都是相同的.

编辑: Skeleton示例,没有特定于JQuery的代码.

<html>
<body>
<a href="some.url" onclick="JQueryToOpenPopupImage(); return false;">Some URL</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

要取消导航操作,只需确保onclick事件调用的方法在结尾处返回false.

我在这里可以找到一个简洁的JQuery图像弹出窗口示例.

  • 您实际上可以使用http://docs.jquery.com/Events/jQuery.Event#event.preventDefault.28.29.onClick中的Javascript代码更难管理. (2认同)

Mat*_*caj 9

如果它为用户增加了价值,请使用ajax.

如果AJAX版本增加了很多比非Ajax版本更多的价值,那么它可能证明为代价来开发,迎合了两个客户端的解决方案.一般来说,我不建议做额外的工作(记住..更多的代码导致更多的维护).


The*_*ppo 7

我认为这里缺少一点:仅对任何搜索引擎不需要知道的内容使用Ajax.


Mat*_*ley 5

98%的用户将使用支持AJAX的浏览器.

这些人中的很大一部分在他们第一次访问您的网站时(或者根本不是)也不会打开它.

我看过看起来像没有javascript的空白页面的网站.不要成为其中之一.在我看来,修复布局问题的Javascript是一个可怕的想法.确保它加载,看起来没有Javascript.如果人们至少可以看到他们错过了什么,他们很可能会将其打开,但如果你的网站看起来刚好被打破,那么......