2012-01-30 119 views
14

fancybox(2.x)我真的很奇怪。我使用这个脚本的年龄,但我没有经历过这样的问题。Uncaught TypeError:Object [object Object] has no method“fancybox”

所以,我的网站:http://tinyurl.com/6mx7an8和手册说,但JS控制台给我的错误

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

你有任何想法,我在做什么错了,我已经包括了每一个jQuery的/的fancybox文件? 任何帮助,将不胜感激:)

回答

53

在您的网站有几个问题。

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

是的,它是由jQuery库造成包含两次(我没有注意到这一点)。谢谢 ! – mbajur 2012-01-30 22:04:49

+1

是的,我没有注意到它,thanx和+1 – Sam 2012-06-04 06:51:54

+0

谢谢,帮我也 – doniyor 2014-02-10 02:34:35

6

看起来像jQuery是包括两次,一次接近顶部的头部和一次接近底部。

1

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

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

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

2

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

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

0

我得到了它与此代码

<script type="text/javascript"> 
    (function($) { 
     $(document).ready(function() { 
      $("a#fancyBoxLink").fancybox({ 
       'href' : '#popupvid', 
       'titleShow' : false, 
       'transitionIn' : 'elastic', 
       'transitionOut' : 'elastic' 
      }); 

     }); 
    })(jQuery);  
</script> 
0

jQuery的子库的工作可以包括在主库,例如jquery.ui.sortable.js我已经包含在jQuery的ui.js同时下载和我加入它再次给我一个错误。

脚本类型= “文本/ JavaScript的” SRC = “供应商/ JS/jQuery的ui.js”>

脚本类型= “文本/ JavaScript的” SRC =“供应商/ JS/jquery.ui.sortable .js文件“>

因此验证包括或不包括子库

相关问题