<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link href="http://fotorama.s3.amazonaws.com/4.6.0/fotorama.css" rel="stylesheet">
<script src="http://fotorama.s3.amazonaws.com/4.6.0/fotorama.js"></script>
<div class="fotorama">
<img src="http://s.fotorama.io/1.jpg">
<img src="http://s.fotorama.io/2.jpg">
</div>
如上所述,如果我想用一组新的图像(例如 3 和 4)替换图像轮播,我会销毁 fotorama,替换图像,然后再次打开 fotorama。
var $fotoramaDiv = $('.fotorama').fotorama();
// 2. Get the API object.
var fotorama = $fotoramaDiv.data('fotorama');
fotorama.destroy();
$('.fotorama').html('<img src="http://s.fotorama.io/3.jpg"><img src="http://s.fotorama.io/4.jpg">');
// 3. Turn it on again.
$('.fotorama').fotorama();
这似乎运作良好,只是 fotorama 记住了我正在浏览的图像的索引位置。例如在原始图像轮播中,我从第一张图像转到第二张图像,这意味着 activeIndex 现在是 1,然后我销毁 fotorama,并创建一个包含图像 3 和 4 的新图像,如代码所示,当轮播的激活索引从 1 而不是 0 开始,我正在查看图像 4。我知道此信息存储在 activeIndex 中,但即使我在销毁原始照片之前将其设置为 0,新照片也不会从 0 开始。