2013-03-16 19 views
4

对于我正在处理的网站存在一些问题,我似乎无法让fancybox正常使用YouTube剪辑对其进行测试。fancybox 2.1.4 - 未捕获的TypeError:无法读取未定义的属性'助手'

这是我的脚本文件。 使用2.1.4使用jQuery 1.9

的script.js

var $j = jQuery.noConflict(); 

$j(document).ready(function(){ 

    $j('.flexslider').flexslider({ 
    animation: "slide" 
    }); 

    $j('.fancybox-media').fancybox({ 
     openEffect : 'none', 
     closeEffect : 'none', 
     helpers : { 
      media : {} 
     } 
    }); 

}); 

的flexslider工作只是正常不过的fancybox媒体是有问题的。 当我点击链接它只是打开链接,而不是在fancybox窗口中打开媒体文件。如果你想看看在发展 该网站可以在WWW找到

<h2><a class="fancybox-media" href="http://www.youtube.com/watch?v=czQipWJA8EU">Watch This Video</a></h2> 

另外:

里面的铬控制台跟它

Uncaught TypeError: Cannot read property 'helpers' of undefined jquery.fancybox-media.js:88 
(anonymous function) jquery.fancybox-media.js:88 
(anonymous function) jquery.fancybox-media.js:196 

链接被定义为。 miems.co

任何想法,请让我知道。 真诚, 大卫

+0

打转转好了后,我说哎呀它,并最终通过降低回jQuery的1.8.0.min.js和回滚到的fancybox修复它2.0而不是使用媒体框架,我决定现在就使用旧的iframe设置。 – FluxSine 2013-03-16 23:39:51

+0

你的fancybox代码在jQuery v1.9.1中工作得很好,检查** [JSFIDDLE](http://jsfiddle.net/E6PYz/1/)** ...你确定你没有忘记包含jquery .fancybox-media.js文件? – JFK 2013-03-19 05:50:18

回答

8

由于有数以百计的意见,并没有答案了

$('.fancybox').fancybox(); 

需要从的fancybox

调用任何其他代码对我来说,之前被称为我已经改变了JavaScript执行的顺序, from:

<script type="text/javascript" src="/static/js/jquery.fancybox-thumbs.js?v=1.0.7"></script> 
<script type="text/javascript" src="/static/js/jquery.fancybox.js?v=2.1.5"></script> 

到:

<script type="text/javascript" src="/static/js/jquery.fancybox.js?v=2.1.5"></script> 
<script type="text/javascript" src="/static/js/jquery.fancybox-thumbs.js?v=1.0.7"></script> 
1

我跑进这个确切的同样的错误,因为我傻傻包括jquery.fancybox.js在页面上的两倍。只要删除第二个电话,问题就应该修复。

0

在WordPress, 长期的研究和更新后:

有过装载的fancybox而除了这个主题我有一个插件也采用的fancybox, 这创造了一个双呼叫的fancybox。 Ashish Kumar指出了。谢谢 我只禁用了插件,所有错误都消失了。

主题:tourpackage

插件:简单的fancybox

相关问题