这只是一个普遍的问题。哪个更好,传统的ajax还是jquery ajax? 因为当我使用jquery ajax时,它似乎在IE中做了时髦奇怪的东西。它应该是一个跨浏览器的库......所以我对使用哪个库感到困惑。我再次问这个是因为串行杀手IE ......
时髦奇怪的东西,即有时它会在几次请求后停止向服务器发送信息,即使我把'cache:false'。
答案 0 :(得分:5)
没有任何有意义的区别。 jQuery的ajax()
自然建立在XMLHttpRequest
上,它们的行为应该相同。我认为其他一些脚本错误导致了“时髦奇怪的东西”。
注意如果你想在没有大型JS库的情况下进行跨浏览器的XMLHttpRequest,那么它实际上非常简单。您只需要修复IE6:
if (!window.XMLHttpRequest && 'ActiveXObject' in window) {
window.XMLHttpRequest= function() {
return new ActiveXObject('MSXML2.XMLHttp');
}
}
然后您可以在任何地方使用标准new XMLHttpRequest
界面。不再需要部署overrideMimeType
hack(用于古老的Mozilla里程碑版本),并且从未需要尝试多个ActiveXObject progids。
答案 1 :(得分:2)
易。 JQuery的。
缺点:
上升空间:
答案 2 :(得分:2)
jQuery $.ajax()
应该可以在IE中正常运行。它使用XMLHttpRequest
就像你自己使用的那样。但是jQuery的方法已经在它上面增加了很少的东西,以使它尽可能地在不同的浏览器之间保持一致。
看看jQuery's ajax source code。其中593 sloc而不仅仅是4的一个原因是修复并包装不同浏览器之间的所有不一致。评论将揭示其中许多问题。
答案 3 :(得分:2)
你显然必须花时间学习jQuery框架,但结果是jQuery是最常用的JS框架之一。所以你的时间投入会得到回报,因为你会发现jQuery除了Ajax通信之外还可以做其他事情。
jQuery允许遍历DOM树的方式也是至关重要的,这使得在jQuery中开发事物变得非常简单。