jQuery动态创建的内容

时间:2013-12-16 15:35:17

标签: jquery fancybox

当我遇到这种情况时,我总是遇到错误或卡住了,我使用ajax从数据库获取图像,我想在fancybox中显示它们, 在页眉中,我已经添加了所需脚本的所有链接 我在我的div中写道:

htlmcon += '  <a rel="example_group" href="data:image/png;base64,' + $(this).find("ImageData").text() + '" title="Lorem ipsum dolor sit amet"><img alt="" src="data:image/png;base64,' + $(this).find("ImageData").text() + '" /></a>';

fancy box文件中所述,我必须准备好以下内容:

$("a.group").fancybox({
    'transitionIn'  :   'elastic',
    'transitionOut' :   'elastic',
    'speedIn'       :   600, 
    'speedOut'      :   200, 
    'overlayShow'   :   false
});

加载页面并使图像显示为erorr(Uncaught TypeError:Object [object Object]没有方法'fancybox')

所以我已从文档中删除了fancybox功能并将其添加到

$.ready.promise().done(function(){

但仍然无法正常工作,我也尝试在获取图像后直接调用它,仍然是相同的错误未捕获TypeError:对象[object Object]没有方法'fancybox'

请指导我如何打电话以及在何处打电话。

注意我已经在正常页面中尝试了,而不是在它正在运行的动态内容上。

...问候

编辑: 我已将此功能添加到准备好的文档中:

  $(document).ready(function () {
          $("#imglist").on("focusin", function () {
              //    /*
              //    *   Examples - images
              //    */


              $("a[rel=example_group]").fancybox({
                  'transitionIn': 'none',
                  'transitionOut': 'none',
                  'titlePosition': 'over',
                  'titlePosition': 'outside',
                  'overlayColor': '#000',
                  'overlayOpacity': 0.9,
                  'titleFormat': function (title, currentArray, currentIndex, currentOpts) {
                      return '<span id="fancybox-title-over">Image ' + (currentIndex + 1) + ' / ' + currentArray.length + (title.length ? ' &nbsp; ' + title : '') + '</span>';
                  }
              });
          });
});

所以Uncaught TypeError已经消失,但是fancybox没有用,但我想也许它没有进入$(“#imglist”)。on(“focusin”,function(){....

另外,这些是我的参考资料:

<script src="code.jquery.com/jquery-1.9.1.js"></script>;
<script src="code.jquery.com/jquery-migrate-1.1.0.js"></script>; 
<script src="JS/jquery.mobile-1.3.2.min.js"></script> 
<script type="text/javascript" src="./fancybox/jquery.mousewheel-3.0.4.pack.js"></script> 
<script type="text/javascript" src="./fancybox/jquery.fancybox-1.3.4.pack.js"></script> 
<link rel="stylesheet" type="text/css" href="./fancybox/jquery.fancybox-1.3.4.css" media="screen" />

1 个答案:

答案 0 :(得分:0)

看起来你还没有加载fancybox。

您可以添加以下内容以将其包含在您的网页中。 (以下从CDN加载)

<script src="cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.5/jquery.fancybox.pack.js" type="text/javascript"></script>