【问题标题】:jQuery cycle + Fancybox plugins frame size problemsjQuery 循环 + Fancybox 插件框架大小问题
【发布时间】:2012-11-03 07:01:03
【问题描述】:

我正在尝试将 jQuery Cycle 插件与 Fancybox 插件一起使用。此时几乎一切都在工作。 fancybox 打开,显示内容,内容循环。我遇到的问题是容器没有自动调整大小以适应图像。我的代码:

<script type="text/javascript" src="/assets/scripts/jquery.cycle.lite.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
    $("#launcher").fancybox({
        autoScale: true
    });
})
$(function(){
    $('#slides').cycle({ 
    timeout:    8000,
    speed:      1000,
    pause: true,
    containerResize: 1,
    fit: 1
    });
});
</script>

   <div id="launcher">
      <div id="slides">
          <img src="/assets/images/VideoSlides/slide1.png">
          <img src="/assets/images/VideoSlides/slide2.png">
          <img src="/assets/images/VideoSlides/slide3.png">
      </div>
   </div>

如您所见,我尝试将各种属性添加到函数中以强制其自动调整大小,但它们没有任何效果。设置任一 div 的样式确实会相应地调整框架的大小,但我宁愿没有固定大小的框架。以前有人做过这样的事吗?

【问题讨论】:

  • 你应该设置一个jsfiddle让我们测试它
  • 不是叫“autoResize”的选项不是“autoScale”吗?
  • 我也尝试过“autoSize”和“autoResize”,但都没有成功。烤好了,我正在做一个jsfiddle。
  • 这很奇怪。这是 jsfiddle:jsfiddle.net/R43xY。除了那里的一切都很好。不知道那是关于什么的。
  • 我无法再编辑上面的评论了,但它可以正常工作,因为图像大小相同。如果您调整图像的大小,您会看到帧大小调整为组中所有图像的最大高度和宽度。

标签: jquery fancybox jquery-cycle


【解决方案1】:

我认为没有简单的解决方案如何组合这两个插件,以便在 Cycle 更改下一张图片之前,fancyBox 会调整大小。

但是,fancyBox2 已经内置了幻灯片,为什么不用它来代替呢?您可以在开始时使用“autoPlay”选项激活它,并使用“playSpeed”来改变速度。快速示例:

$("#launcher").click(function() {

    $.fancybox.open( $("#slides img"), {
        autoPlay   : true,
        playSpeed  : 2000,
        prevEffect : 'fade',
        nextEffect : 'fade'
    });

    return false;
});

见 - http://jsfiddle.net/3SQt4/

【讨论】:

  • 我会记住内置幻灯片放映。实际上,我使用 Cycle 插件的唯一原因是允许选择循环非图片。如果我能够说服老板坚持图片,那么我不明白为什么我不能使用你的建议。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-19
  • 1970-01-01
相关资源
最近更新 更多