【问题标题】:Standalone library for AJAX [closed]AJAX 的独立库 [关闭]
【发布时间】:2012-01-27 02:03:47
【问题描述】:

我使用出色的 jQuery 库已经有一段时间了,并且已经熟悉它的 AJAX 功能。我正在开发一个只需要 jQuery 的 AJAX 功能的项目。将这个逻辑从 jQuery 中分离出来并不是那么容易,因为有太多的依赖关系。

我需要一个可以实现以下功能的 AJAX 库(与 jQuery 允许的方式相同):

  • 从另一个域加载脚本
  • 从同一个域加载脚本
  • 脚本执行后立即执行回调

使用 jQuery 可以轻松实现:

$.ajax({
    type     : 'GET',
    url      : url,
    dataType : 'script',
    cache    : true,

    success: function() {
       // script has literally just finished executing...
    }
})

哪个成熟的(和轻量级的)开源库可以满足这些要求?

【问题讨论】:

  • jQuery 有哪些导致问题的依赖项?如果只是 jQuery 的大小不可接受,那么您可能需要查看jx。再说一次,缩小的 jQuery 只有 31K...
  • @voithos jQuery ajax 至少需要(根据 jQuery 论坛)7 个脚本才能运行,因为它利用了自己的功能。 31K 很小,但是当唯一的要求是 AJAX 时,它仍然显得很浪费。我将看看“jx”。你知道它是否支持等效的“脚本”dataType jQuery 选项吗?欢呼
  • 听起来你不需要优化。 31K很小。如果您没有证明需要使用较小的东西,我建议您使用您所知道的 - 您的时间比脚本传输中节省的约 20K 更有价值。此外,您最终可能会以无法预料的方式使用 jQuery……当然,除非您只是想学习不同的库;没关系。
  • @voithos 我能理解你在说什么。如果可能的话,我想避免使用像 jQuery 这样的大型复杂库。我会玩一下“jx”,看看是否能解决问题。
  • 部分复杂性是由于需要选择器、点击处理程序等...话虽如此,如果您想要更轻量级的库,请尝试使用 dojo。 Dojo 让您可以将任何您喜欢的组件添加到您的构建中,并让您可以根据需要将其设置为重或轻

标签: javascript jquery ajax open-source


【解决方案1】:

好的,事实证明我需要的功能并不是真正的 AJAX 响应的一部分。查看 jQuery 源代码,我发现“脚本”处理程序本质上是临时创建一个“脚本”元素,然后在加载后将其删除。

链接到相关的 jQuery 源代码: https://github.com/jquery/jquery/blob/master/src/ajax/script.js

以下页面更详细地描述了此过程: http://www.ejeliot.com/blog/109

【讨论】:

    猜你喜欢
    • 2013-07-27
    • 2018-07-29
    • 2012-08-20
    • 1970-01-01
    • 1970-01-01
    • 2020-01-01
    • 2013-11-24
    • 1970-01-01
    • 2011-07-21
    相关资源
    最近更新 更多