スワイプ画像スライダーが入ったファンシーボックスを作りたいです。fancybox のハウツー ページの指示に従って、スライダーを配置する非表示の 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 -> 1 -> 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>