Fancybox 2和Swipe Slider无法一起使用

时间:2013-07-01 20:44:46

标签: javascript jquery html slideshow fancybox-2

我想在fancybox内创建一个Swipe image slider。按照fancybox的how-to页面中的说明,我创建了一个隐藏的div,我的滑块将被放置。

<div style="display:none">
  <div id="hidden" >
    <div id="mySwipe" class='swipe'>
      <div class='swipe-wrap'>
        <div><b>0</b></div>
        <div><b>1</b></div>
        <div><b>2</b></div>
      </div>
    </div>
    <div style='text-align:center;padding-top:20px;'>
      <button onclick='mySwipe.prev()'>prev</button>
      <button onclick='mySwipe.next()'>next</button>
    </div>
  </div>
</div>

现在我使用这些隐藏的内容来填充fancybox:

<p align="center"><a class="fancybox" href="#hidden">Click me</a></p>

不幸的是,有一些问题我有一个带有空(或隐藏?)内容的滑块。换句话说,我没有得到幻灯片0 - &gt; 1 - &gt; 2。

我认为这个问题是由'display:none'风格引起的。事实上,如果我把它拿出来,幻灯片显示工作,但它显示隐藏的内容,我不希望这样。

在这里,我向你报告我的html的负责人:

<!-- Add JQuery -->
<script type="text/javascript" src="js/jquery-1.10.1.min.js"></script>

<!-- Add Swipe Slider -->
<script src="js/slider/swipe.js"></script>
<style>
/* Swipe 2 required styles */


.swipe {
    overflow: hidden;
    visibility: hidden;
    position: relative;
}
.swipe-wrap {
    overflow: hidden;
    position: relative;
}
.swipe-wrap > div {
    float: left;
    width: 100%;
    position: relative;
}

/* END required styles */
</style>

<!-- Add Fancybox -->
<link rel="stylesheet" href="js/fancybox/source/jquery.fancybox.css" type="text/css" media="screen" />
<script type="text/javascript" src="js/fancybox/source/jquery.fancybox.pack.js"></script>
<script type="text/javascript">
$(document).ready(function(e) {
    $(".fancybox").fancybox();
    var elem = document.getElementById('mySwipe');
    window.mySwipe = Swipe(elem, {});
    });
</script>

1 个答案:

答案 0 :(得分:2)

您可以尝试设置而不是display:none

<div style="position:absolute; left:-5000px;">

这样结果类似于display:none(div的内容不可见),你应该避免所描述的问题