【问题标题】:double inclusion of same jQuery plungin conflict issue双重包含相同的jQuery插件冲突问题
【发布时间】:2010-07-17 10:13:42
【问题描述】:

我创建了一个 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错误

预防

【问题讨论】:

  • 如果可能的话,您需要防止在页面中加载两次,您可以从 wordpress 方面做到这一点吗?或者最后包含您的脚本并检查插件是否已经加载?

标签: jquery wordpress fancybox


【解决方案1】:

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

您可能可以使用 typeOf 运算符来查看是否已经加载了特定的幻想框,如果是,则不要将其包含两次。

【讨论】:

    【解决方案2】:

    wp_enqueue_script 是你的朋友!如果另一个插件使用the correct technique for loading JavaScript,您可以简单地在插件中排队相同的句柄。

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

    【讨论】:

      猜你喜欢
      • 2011-05-24
      • 1970-01-01
      • 1970-01-01
      • 2011-08-10
      • 2015-08-23
      • 1970-01-01
      • 2012-08-20
      相关资源
      最近更新 更多