将jQuery包含在jQuery插件中可以吗?


9

包含jQuery库的jQuery插件文件问题今天在stackoverflow上出现,我强烈建议不要在插件中包含jQuery。

我在这方面并没有得到别人的任何支持。实际上,包含jQuery的支持更多。可以吗?还是有充分的理由不这样做?我认为这是一个非常糟糕的主意,因为我认为应该由开发人员决定使用哪个版本的jQuery。


将源包含在文件中还是以编程方式?

2
据我所知,您所链接的问题有3个答案,除了“不要那样做,别无所求!但是如果您这样做了……”,我什么也不会说支持jQuery 。
Ed James

恕我直言,如果您提供解决方案,那么您正在支持该解决方案,那么您将无法同时使用围栏。如果您赞成该解决方案,那么您还会说“我支持”
mcgrailm 2011年

3
并不是的。如果您赞成该解决方案,那么您将说“这是对问题的很好答案”。关于该主题的OP并没有询问是否包括jQuery,而是询问了如何,因此答案告诉了他如何是好的答案。
Ed James

@埃德·伍德科克(Ed Woodcock)我认为我们只需要不同意,但对我来说,“如何”的好答案就不会;如果您认为不应这样做
mcgrailm 2011年

Answers:


8

我什至不打算这样做。

一方面,如果大多数人使用的是jQuery插件,大多数人已经在他们的应用程序中包含了jQuery框架的副本,这意味着您既要加载两次(使HTTP请求变慢),又可能遇到冲突问题。

另一方面,人们常常使用Google的API或其他CDN之类的东西来交付其外部JS库,在这种情况下,您又要延长站点加载时间。

至于jQuery的版本:如果您的插件仅在1.5上有效(1.6中的attr()进行了一些更改,可能会破坏某些内容,所以我将以1.5为例),您应该让人们知道,但是不要强迫他们使用特定版本。就您所知,他们可能想要使用您的插件并将其扩展以执行需要1.6的其他任务。当然,他们必须修复基本插件中存在的所有错误,但是那又如何呢?


7

最初,我对此有两种想法:

  1. 只有让每个插件都包含自己的jQuery版本,您才能确定正确的版本。
  2. 如果您允许随机的人(包括您以前的版本)确定页面权重或在代码中引入任意/未知/不可知的怪异现象,那么您将无法控制项目。

#2使我的皮肤爬行,因此赢得了争论。

所以我的回答是不,那不行。选择您的插件,确保它们在特定的jQuery rev上可以很好地配合并坚持使用


0

绝对不!这就像有人购买一套轮胎时包括一辆车辆。

插件是某物的附加,而不是附加物的副本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.