2014-07-16 3 views
0

Fancybox 2.1.5 크기의 iframe 크기 설정 방법을 많이 시도했지만, 대부분 stackoverflow에 대한 다른 질문에서 가져온 아이디어는 없습니다. 대신 동적으로 생성 된 링크를 클릭하면 iframe이 매우 작게 열립니다 (300 x 150px). .fancybox-inner에는 올바른 너비와 높이가 있지만 실제 iframe에는 width/height 속성이 없습니다. 링크의 대상은 항상 HTML 페이지가 아닌 PDF입니다.iframe 크기 설정 문제.

$(".homebox a.fancybox").click(function(e) { 
     e.stopPropagation(); 
     $.fancybox({ 
      href: $(this).attr('href'), 
      fitToView: false, 
      autoSize: false, 
      autoDimensions: false, 
      width : 600, 
      height : 900, 
      type :'iframe' 
     }); 
     e.preventDefault(); 
    }); 

어떤 아이디어가 많이 주시면 감사 :

여기 내 코드입니다. (NB. a.fancybox 링크가 실제로 다른 링크의 자식이기 때문에 e.stopPropagation()을 사용합니다.)

+0

나는 보통 'minWidth'와'maxWidth'도 동일하게 설정합니다 – Pete

+0

Thanks Pete - 그냥 사용해 봤지만 기쁨은 없었습니다. – GluePear

+0

열려있는 문서에서 본문의 크기를 최소 너비와 높이가 600x900으로 설정하려고 시도 했습니까? 또는 귀하의 CSS에 스타일이 있는지 확인하십시오 '.fancybox-iframe {display : block; 너비 : 100 %; 높이 : 100 %; }' – Pete

답변

0

iframe 콘텐츠가 완전히로드되기 전에 fancybox가 크기를 계산하므로 크기가 작아 보입니다. 같은 스크립트에서 false에 iframe을 preload 세트를 추가

시도 :

$(".fancybox").on("click", function (e) { 
    $.fancybox({ 
     href: this.href, 
     fitToView: false, 
     autoSize: false, 
     // autoDimensions: false, // this is for fancybox v1.3.x 
     width: 600, 
     height: 900, 
     type: 'iframe', 
     iframe: { 
      preload: false 
     } 
    }); 
    return false; 
}); 

JSFIDDLE

PS를 참조하십시오. 다른 링크 내부에 링크를 중첩시키지 않는 것이 좋습니다. 요구 사항을 해결할 수있는 더 나은 설계 옵션이 항상있을 것입니다. 내 5 ¢

+0

JFK에게 감사드립니다. 그러나 나는 이미 다른 곳에서 (아마 당신에게서 온!) '예고 : 거짓'충고를 보았고 그것을 기꺼이 시도하지 않았습니다. 결국 나는 잘 작동하는 다른 라이트 박스와 함께 가기로 결정했다. – GluePear