创建jquery插件是件好事吗

创建jquery插件是件好事吗,jquery,Jquery,比如说,我正在构建一个巨大的网站,接近facebook的大小,我正在使用jquery来处理大部分客户端的内容,现在很明显,可能会有至少4k行代码和数千个ajax请求等等 所以我的问题很简单,构建基于jquery的脚本的最佳方法是什么,我应该为我将要多次使用的东西创建插件,还是应该只使用函数并在需要时调用它们 编辑也许我对facebook的大小做得太多了,但无论如何它都会非常大。一个插件或函数可以很好地完成这项任务。如果您有一个像其他jQuery方法一样在一个或多个DOM对象上操作的操作,那么插件

比如说,我正在构建一个巨大的网站,接近facebook的大小,我正在使用jquery来处理大部分客户端的内容,现在很明显,可能会有至少4k行代码和数千个ajax请求等等

所以我的问题很简单,构建基于jquery的脚本的最佳方法是什么,我应该为我将要多次使用的东西创建插件,还是应该只使用函数并在需要时调用它们


编辑也许我对facebook的大小做得太多了,但无论如何它都会非常大。

一个插件或函数可以很好地完成这项任务。如果您有一个像其他jQuery方法一样在一个或多个DOM对象上操作的操作,那么插件是有意义的

插件的优点是,您可以更轻松地链接它,如:

$(".myClass").myPlugin("x").addClass("foo");
而且,这是一种在jQuery名称空间中创建大量函数的方法,根本不使用全局名称空间。除此之外,它和函数之间没有太大区别


如果您有一个常用的jQuery操作,那么将其作为一个插件并没有坏处,您可以获得链接方法调用的能力。

在任何类型的大型、厚客户端(即javascript密集型)web应用程序中,您可能需要在名称空间方面真正掌握javascript代码库,范围界定等

我认为插件可能是帮助保持全局名称空间干净的工具箱中的一个工具,但是您也可以研究像backbone.js这样的框架,它将允许您从DOM中完全释放一些javascript代码构造


其他工具,如Underline.js,可能也会有所帮助。

如果您的网站是一个如此大的网站,我建议您使用jquery旁边的库,它在java脚本中实现MVVM模式。正如您提到的,使用jquery for larg网站会导致大量代码行。我认为使用knockout.js,您可以减少代码行并管理它们您的函数和回调更好。

这只是一个建议。

插件促进重用。这就是制作它们的好处。抽象函数可以看作是一个插件,而不是以
jQuery
的方式(例如,通过
$
)。只需确保不要将所有内容都附加到
$
。另外,我相信Facebook的编译二进制文件是1.5GB。我不擅长数学,但我认为这远远超过4k;)这完全取决于你的喜好。显然,插件更易于移植,但在编写插件时必须更加小心。哦,祝你在“接近facebook规模”的问题上好运。这个问题可能属于codereview或程序员,而不是stackoverflow。