2017-04-23 5 views
0

jQuery 용 PhotoSwipe 플러그인을 사용하고 있습니다.사진 닦이 갤러리를 표시하는 동안 사용자가 링크를 클릭하는 것을 허용하는 방법?

내 웹 사이트는 사용자가 아래로 스크롤하면 고정 메뉴를 사용합니다.

Z- 색인을 사용하면 포토 윕 갤러리가 내 메뉴와 겹치도록 만들지 못했습니다. 그래서 메뉴의 공간을 절약하기 위해 photoswipe의 기본 창 크기를 조정했습니다. 이 외모도 나는 더 좋아한다.

이제 사진을 열었을 때 PhotoSwipe로 다른 페이지를 탐색 할 때 PhotoSwipe의 콜백 중 일부가 사용자의 출근 지점으로 사용자를 리디렉션하는 것처럼 보입니다.

photoswip의 destroy 호출을 사용하고 경고를 넣으면 리디렉션이 지연됩니다 (사용자가 왔던 페이지로 돌아 가기).

어떻게 사용자가 리디렉션되지 않고 포토 닦이 갤러리를 닫을 수 있습니까?

편집 : 이것은 photoswipe 갤러리를 초기화하는 방법입니다.

function showSoftwareGallery(sections, index){ 
    var pswpElement = document.querySelectorAll('.pswp')[0]; 

    var items = new Array(sections.length); 
    for(var i=0; i<sections.length; i++){ 
     items[i] = { 
      src: sections[i].image, 
      w: 1920, 
      h: 1080, 
     }; 
    } 

// define options (if needed) 
    var options = { 
     // optionName: 'option value' 
     // for example: 
     index: index, // start at first slide 
     escKey: true, 
     arrowKeys: true, 
     shareEl: false, 
     closeEl:true, 
     captionEl: true, 
     fullscreenEl: true, 
     zoomEl: true, 
    }; 

// Initializes and opens PhotoSwipe 
    var headerHeight = $('nav').first().height(); 
    var height = $(window).height() - headerHeight; 
    $('.pswp').first().css('height', height + 'px'); 
    $('.pswp').first().css('top', headerHeight + 'px'); 
    var gallery = new PhotoSwipe(pswpElement, PhotoSwipeUI_Default, items, options); 


    gallery.listen('destroy', function() { alert('destroy')}); 


    gallery.init(); 
} 

편집 2 당신은 여기 내 photoswipe 디스플레이의 스크린 샷을 참조하십시오. 그것은 내 메인 메뉴가 여전히 보이고 사용자가 그것을 클릭 할 수 있음을 보여줍니다. enter image description here

+0

변수를 채웠습니까? photoswipe를 초기화하고 호출하는 코드를 게시하십시오. –

+0

나는 질문을 편집했다. 감사. –

+0

글쎄 그 것들은 내가 photoswipe : 부적 절한 항목 변수, 자바 스크립트 오류 (그 경우에는 이미지가 그 탭에서 열립니다)와 함께했다. 당신이 가지고 있을지도 모르는 것이 당신의 메뉴가 클릭되고 사용자를 어딘가에 데려 간다는 것입니다. 솔직히 나는 이것이 당신이 무엇을 의미하는지 모른다.'사진을 열었을 때 PhotoSwipe로 다른 페이지를 탐색 할 때, PhotoSwipe의 콜백 중 일부가 사용자의 출신 국으로 사용자를 리디렉션하는 것처럼 보입니다 .' 어떻게 할 수 있습니까? photoswipe가있는 다른 페이지로 이동 하시겠습니까? 사용자를 어디로 리디렉션합니까? 사용자는 어디에서 왔습니까? –

답변

1

src/js/history.js 파일이 코드가 포함

 _listen('destroy', function() { 
      if(!_hashReseted) { 
       returnToOriginal(); 
      } 
     }); 

당신은 재생 가능한 코드를 제공하지 않았다을, 그래서 이것은 100 %는 아니지만 도움이 될 것이다. 나는이 해당 코드를 변경할 것 : 앱에서

 _listen('destroy', function() { 
      if(!_hashReseted && !myApp.shouldClosePhotoswipe) { 
       returnToOriginal(); 
      } 
     }); 

이 코드를 추가

var myApp = { 
    // mix in with your javascript code 
    shouldClosePhotoswipe: false 
} 

그리고 메뉴가 어디 가서 클릭하면 바로이 줄을 추가 :

myApp.shouldClosePhotoswipe = true; 

을 그런 다음 dist/photoswipe.js 파일을 다시 작성해야합니다.
dist/photoswipe.js 파일을 직접 편집 할 수도 있습니다.