0

getScriptを介してfancyboxを動的にロードし、それを要素にアタッチしようとしています。fancyboxをドキュメント内に動的にロードする準備ができています...

だからそうなるのです。

documents ready -> getScript

.fancyboxしかし、console.logを実行すると、タグ()にアタッチしたくないようですjQuery('.fancybox')が、[]を取得しましたが、要素はすでにロードされていますか?またjQuery('.fancybox').fancybox();、Google Chromeのコンソールに入力しても機能しませんか?

私が間違っていることについて何か考えはありますか?

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がロードされた後にのみ実行する必要があるため、ファンシーボックスを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 に答える