未捕获的TypeError:对象没有方法“fancybox”

我对fancybox(2.x)有一个奇怪的问题。 我使用这个脚本已经很久了,但我之前没遇到过这样的问题。

所以,我有网站: http : //tinyurl.com/6mx7an8 ,我已经包含了每个jquery / fancybox文件作为手册说但是JS控制台给了我错误

Uncaught TypeError: Object [object Object] has no method 'fancybox'

你知道我做错了什么吗? 任何帮助,将不胜感激 :)

您的网站有几个问题。

  1. 你在包括fancybox插件js之前和之后包括jQuery库2次,因为添加的插件被第二个jQuery库包含清除。
  2. 还有一些其他的库覆盖了$ ,所以你的代码不能工作,因为$不再是jQuery的别名。 您可以使用jQuery.noConflict()来避免与页面上使用相同变量$其他库发生冲突。

看起来jQuery包括两次,一次靠近头顶,一次靠近底部。

我有类似的问题。 不知何故,jQuery被加载了两次。 在测试某些内容时,我添加了一个drupal_add_js行来加载一个块中的jquery,该块已被禁用,但Drupal仍在禁用块中评估PHP。

当我从块中删除drupal_add_js行时,jQuery加载正常,每页一次。

我在我的网站上有一个css unify php脚本,它将jquery和jquery postmessage插件添加到同一个javascript文件中。

所以它给了我上面的错误。

我已经单独加载了jquery postmessage而没有统一它,它停止给我错误。

我得到了它使用此代码

  

Jquery子库可能包含在主库中,例如jquery.ui.sortable.js我在下载时已经包含在jquery-ui.js中,我再次添加它给我一个错误。

script type =“text / javascript”src =“vendor / js / jquery-ui.js”>

script type =“text / javascript”src =“vendor / js / jquery.ui.sortable.js”>

所以validation子库是否包括在内