所以假设我正在建立一个巨大的网站,接近 facebook 的大小,并且我正在使用 jquery 来处理大多数客户端的东西,现在显然可能会有至少 4k 行代码和数千个 ajax 请求ETC..
所以我的问题很简单,构建基于 jquery 的脚本的最佳方法是什么,我应该为我要多次使用的东西创建插件,还是应该只使用函数并在需要时调用它们?
编辑好吧,也许我做得过火了,facebook size
但无论如何它都会很大..
所以假设我正在建立一个巨大的网站,接近 facebook 的大小,并且我正在使用 jquery 来处理大多数客户端的东西,现在显然可能会有至少 4k 行代码和数千个 ajax 请求ETC..
所以我的问题很简单,构建基于 jquery 的脚本的最佳方法是什么,我应该为我要多次使用的东西创建插件,还是应该只使用函数并在需要时调用它们?
编辑好吧,也许我做得过火了,facebook size
但无论如何它都会很大..
无论哪种方式,插件或功能都可以很好地完成任务。如果您有一个像其他 jQuery 方法一样对一个或多个 DOM 对象进行操作的操作,那么插件是有意义的。
插件的优势在于您可以更轻松地将其链接起来,如下所示:
$(".myClass").myPlugin("x").addClass("foo");
而且,它是一种在 jQuery 命名空间中创建许多函数而根本不使用全局命名空间的方法。除此之外,它与函数之间没有太大区别。
如果您有一个常用的 jQuery 操作,那么将其制作为插件没有任何缺点,并且您可以获得链接方法调用的能力。
在任何类型的大型、厚客户端(即 javascript-heavy)Web 应用程序中,您可能需要真正掌握有关命名空间、范围等方面的 javascript 代码库。
我认为插件可能是您工具箱中的一个工具,可以帮助保持全局命名空间清洁,但您也可以研究诸如骨干网之类的框架,它可以让您完全从 DOM 中释放一些 javascript 代码结构。
underscore.js 等其他工具也可能会有所帮助。
如果您的网站是如此大的网站,我建议您在 jquery 旁边使用Knockout.js库,它在 java 脚本中实现 MVVM 模式。正如您提到的,在大型网站上使用 jQuery 会导致大量代码行。我认为knockout.js 你可以减少它们并更好地管理你的函数和回调。
这只是一个建议。