2012-07-26 5 views
1

javascript가있는 새 창에서 현재 표시된 사진을 열려고하지만 iPad에서도 작동해야합니다. 내가 시도한 것은 예제에서와 같이 도구 모음에 단추를 추가하는 것입니다. 또한 photoswipe.css에 해당 버튼의 CSS를 추가했습니다. 합니다 (PhotoSwipe 사진을 새 창에서 닫습니다.

getToolbar: function(){ 
    return '<div class="ps-toolbar-close"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-play"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-previous" style="padding-top: 12px;"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-next"><div class="ps-toolbar-content"></div></div><div onclick="javascript: getImgUrl();" class="ps-toolbar-download"><div class="ps-toolbar-content"></div></div>'; 
} 

이 완벽하게 작동 : 나는 자바 스크립트 기능이 추가되었습니다 :

function getImgUrl() 
{ 
    var divHead = getElementsByClassName(document, 'ps-carousel-content'); 
    var imgElement = divHead[0].getElementsByTagName("img"); 
    var imgUrl = imgElement[1].getAttribute('src'); 
    window.open(imgUrl.toString()) 
} 

을 그리고 사용자 지정 도구 모음을 얻을 수있는 예제의 코드를 사용했지만 버튼을 만들고 조각을 추가 크롬/사파리와 같은 웹킷 브라우저에서 새 창/탭으로 사진이 열립니다. 그러나 iPad에서이 작업을 시도하면 작동하지 않습니다. 버튼을 누르면 아무 일도 일어나지 않습니다.

아무도 나를이 문제를 해결하는 데 도움이 될 수 있습니까? 어쩌면 나는 그것을 잘못하고있다. 그래서 다른 접근법이 더 좋을지 말해봐.

감사합니다.

+0

앵커 태그에서 래핑을 시도하고 대상을 _blank로 설정 했습니까? – Keith

답변

0

iPad가이 스크립트를 '팝업'으로 차단하는 것 같습니다. this SO 질문을 참조하십시오. 문제가 팝업 차단기인지 확인하려면 설정> Safari> "팝업 차단"으로 이동하여 지금 작동하는지 확인하십시오.

당신이 팝업 차단기가 아닌 다른 문제 확신이 있다면, 당신은 이런 식으로 이미지를 여는 방식 변경 시도 :

function getImgUrl() 
{ 
    var divHead = getElementsByClassName(document, 'ps-carousel-content'); 
    var imgElement = divHead[0].getElementsByTagName("img"); 
    var imgUrl = imgElement[1].getAttribute('src'); 
    return imgUrl.toString(); 
} 

getToolbar: function(){ 
    return '<div class="ps-toolbar-close"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-play"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-previous" style="padding-top: 12px;"><div class="ps-toolbar-content"></div></div><div class="ps-toolbar-next"><div class="ps-toolbar-content"></div></div><a href="' + getImgUrl() + '" target="_blank" class="ps-toolbar-download"><div class="ps-toolbar-content"></div></a>'; 
} 

내가 같이 이미지 URL을 반환하는 함수를 변경을 문자열을 입력 한 다음 해당 문자열을 getToolbar 반환 문자열에 삽입합니다.