0

我正在尝试通过 getScript 动态加载 fancybox,然后将其附加到一个元素。我已经准备好将fancybox动态加载到文档中...

就这样。

documents ready -> getScript

但它似乎不想附加到我的 a 标签 ( .fancybox) 如果我执行 console.logjQuery('.fancybox')我得到一个 [] 但元素已经加载?如果我jQuery('.fancybox').fancybox();在谷歌浏览器的控制台中输入它仍然不起作用?

知道我做错了什么吗?

jQuery.getScript("/fancybox/jquery.fancybox.pack.js", function() {
      console.log(jQuery(".fancybox"),jQuery("a"));
      return jQuery(".fancybox").fancybox();
    });

该元素是一个简单的包装图像的标签,它不是动态加载的。

<div class="youtube"><a href="http://www.youtube.com/watch?v=1svYgdfgfdf" class="fancybox"><img height="181" src="images/youtube-video.png" width="326"></a></div>
4

2 回答 2

0

准备好文档还为时过早尝试将其包装起来,$(window).load(function(){//CODE HERE});因为它只需要在 DOM 加载后运行,这样它就可以将您的 fancybox 应用到您的 DOM 元素。

于 2012-09-09T19:42:26.517 回答
0

试试这个:

jQuery.getScript("/fancybox/jquery.fancybox.pack.js", function() {
  jQuery(document).ready(function() {
    jQuery(".fancybox").fancybox();
  });
});

编辑:函数调用已修复

于 2012-09-09T19:47:56.293 回答