我正在我的网站上使用Galleria图片库。 问题是:当我第一次运行galleria,并且初始图像不是第一次时,Galleria会显示片刻,然后滑回第一张图像。当我点击拇指时,Galleria正确行动,所以这只是第一次发生。这是我用来初始化广场的代码:
$('.thumbnail').live('click', function(){ var image_number = getNumber($(this).attr('id')); Galleria.ready(function(options) { this.show(image_number); }); Galleria.run('#galleria'); $('#galleria_frame').show(); });
getNumber是我的函数,返回图库中的图像数量,第一个图像有数字0,第二个 - 数字1等。 我的错在哪里?当我第一次点击.thumbnail时,为什么galleria会滑回第一张图片?
答案 0 :(得分:2)
您的代码存在一些问题。
1)您多次初始化Galleria(每次单击缩略图时)
2)每次你告诉Galleria显示不同的图像时,你都会向ready
事件添加多个监听器。
请改为尝试:
$('.thumbnail').live('click', function(){
var image_number = getNumber($(this).attr('id')),
instance = $('#galleria').data('galleria');
// if Galleria already loaded, just show the index:
if (instance) {
instance.show(image_number);
} else {
// else fire up Galleria and pass the index as an option
$('#galleria_frame').show();
Galleria.run('#galleria', { show: image_number });
}
});