双重包含相同的jQuery插件冲突问题

时间:2010-07-17 10:13:42

标签: jquery wordpress fancybox

我创建了一个wordpress插件(比如P1),其中我使用了fancybox(一个jquery插件)。我使用wordpress的wp_enqueue_script()函数包含了它的js。

但是,在我的客户端wordpress博客上,他正在使用其他一些wordpress插件,其中一个(比如P2)也使用fancybox。

当这两个P1和P2都处于活动状态时,fancybox js从P1加载2次,从P2加载另一次。由于这个原因,它给出了错误

  

加载未定义(第36行)

我可以

吗?
  1. 阻止fancybox从我的wordpress插件加载2次或更多次
  2. 或处理此js错误
  3. 阻止

2 个答案:

答案 0 :(得分:0)

如果您可以控制脚本,则可以防止从您身边(wordpress侧)加载脚本两次。

您可以使用typeOf运算符来查看是否已经加载了特定的fancybox,如果是,则不会包含它两次。

答案 1 :(得分:0)

wp_enqueue_script是你的朋友!提供另一个插件正在使用the correct technique for loading JavaScript,您只需在插件中排队相同的句柄即可。

这样,Fancybox只会加载一次,无论两个插件都在排队。