2013-03-07 2 views
0

fancybox (v2)를 사용하면로드 할 때 iframe 콘텐츠가있는 fancybox를 표시하는 고유 URL을 어떻게 만듭니 까? 인라인 콘텐츠 (예 : www.mysite.com/index.html#idgoeshere)와 잘 작동하지만 fancybox를로드하기 위해 url 또는 j가 포함해야하는 내용을 알지 못하고 특정 iframe을 포함해야합니다. 또는 ajax.txt 페이지. 열린 fancybox 창으로,jquery fancybox, iframe 또는 ajax, URL로로드

www.mysite.com/index.html#iframe.html

로드 인덱스 페이지 : 내가 달성하기 위해 노력하고 무엇

은 같은 링크로 이동하여입니다 , fancybox 창에로드 된 iframe.html 페이지 (또는 아약스를 통해로드 된 .txt 파일 일 수도 있음). 어떤 도움이나 지침

HTML

<a class="fancybox fancybox.iframe" href="iframe.html">Iframe</a> 

Fancybox는

<script> 
$(document).ready(function($) { 
    $.fancybox({ 
    content: $(window.location.hash).html() 
}); 
    $('.fancybox').fancybox(); 
}); 
</script> 

감사합니다.

카일

업데이트 모든 사람의 도움을

감사합니다! 여기 나를 위해 위대한 일을했다. 구글과 페이스 북과 같은 사이트는 종종 그들을 무시하기 때문에 나쁜 생각을 해시 태그입니다 사용

<script> 
$(document).ready(function() { 
    $('.fancybox').fancybox({ 
    'scrolling' : 'no' 
    }); 
    if (window.location.hash !== "") { 
     $(window.location.hash).click(); 
    } 
}); 
</script> 
+0

내 생각에 다로드 시간을 줄이려고한다고 –

+0

가능한 [jquery fancybox로드 시간 및 고유 URL] (http://stackoverflow.com/questions/15251905/jquery-fancybox-load-times-and-unique-urls) – JFK

+0

같은 질문을 반복하지 말고 – JFK

답변

0

the Fancybox site의 예제를 살펴보십시오. Fancybox 동작은 전적으로 링크의 href를 기반으로합니다. 따라서 페이지를로드 한 다음 을 호출하기 전에 iframe.html을 가리 키도록 페이지의 링크 href를 업데이트하면 예상대로 작동합니다. 경고 : 따르도록 내 머리 위로 떨어져 테스트되지 않은 코드 ... 하위 문자열 호출이 해시 문자열에서 #을 제거 할 필요가

$(document).ready(function(){ 
    $('#target').attr('href', window.location.hash.substring(1)).fancybox(); 
}); 

는이

+0

감사합니다. @ jxpk777, #target은 .fancybox 클래스입니까? – Kyle

+0

예, 대상 요소가 그 내용으로 대체 되려면 무엇이든 결국에는 .fancybox를 호출하려고합니다. Joe와 위치 해시를 사용하는 것은 좋은 생각이 아닙니다. 아마도 쿼리 문자열을 사용하는 것이 더 나은 방법 일 것입니다. – jxpx777

1

: 나는

JS fancybox.iframe로 불리는 후 별도의 HTML 파일로 우리 내 콘텐츠를 저장합니다.

대신 fancybox의 afterLoad 함수에서 window.history.replacestate를 사용하십시오. 예를 들어

: replaceState에 대한

afterLoad:function(){ 
    window.history.replaceState({},"Fancybox","/url-to-set"); 
} 

이상한 점은 처음 두 개의 인수가 (내가 아는 한) 문제가되지 않는다는 것입니다. 중요한 것은 "/ url-to-set"이라는 마지막 인수입니다. 이 URL을 URL로 사용하려는 고유 한 URL로 설정하려고합니다.

+0

덕분에 조하는 데 도움이 window.location.hash

희망에서 반환하지만, 이 때마다 fancybox에 콘텐츠 onload가 표시됩니까? 나는 그것이 특정 URL을 호출 팝업 수있을 찾고있다. 감사. – Kyle