2012-08-24 3 views
2

내 웹 사이트에서 갤러리아 이미지 갤러리를 사용하고 있습니다. 문제는 : 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

시도를 여기 http://jsfiddle.net/ 이 정보는 – kidwon

+0

은 질량이 스크립트의 포함시 전체 상황을 모델링 할 수없는 것만으로는 충분하지 않습니다 당신의 예를 제공하기 위해 영화. API를 올바르게 사용하고 있는지 확인하십시오. 나는이 문서를 읽었지만, 초기화 코드를 작성하는 과정에서 착각 할 수도있다. – user1621717

답변

2

코드에 몇 가지 문제가 있습니다.

1) 당신이 ready 이벤트에 리스너를 여러 개 추가 갤러리아 여러 번 (축소판을 클릭 할 때마다)

2)를 초기화하는, 때마다 당신은 서로 다른 이미지의 온로드를 보여 갤러리아을 말한다.

대신을 시도해보십시오

$('.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 }); 
    } 
}); 
+0

예를 두 번 클릭하면 (인스턴스가 참인) 미리보기 이미지를 클릭하면 이전/다음 버튼이 더 이상 갤러리 이미지를 변경하지 않습니다. 생각 하시겠습니까? – 12Bo

관련 문제