[JQUERY] Fancybox는의 jQuery v1.9.0로 일을하지 않는 [f.browser가 정의되어 / 부동산 'MSIE'을 읽을 수 없습니다]
JQUERYFancybox는의 jQuery v1.9.0로 일을하지 않는 [f.browser가 정의되어 / 부동산 'MSIE'을 읽을 수 없습니다]
해결법
-
1.http://bugs.jquery.com/ticket/13183 그 넘김 Fancybox 스크립트를 : 그것은 jQuery를에서 문제를 여기에보고있는 것 같다.
http://bugs.jquery.com/ticket/13183 그 넘김 Fancybox 스크립트를 : 그것은 jQuery를에서 문제를 여기에보고있는 것 같다.
또한 상기 참조 https://github.com/fancyapps/fancyBox/issues/485를 확인한다.
의 jQuery v1.8.3의 해결 롤백 같이 하나의 jQuery 버그가 수정되거나 Fancybox이 패치된다.
UPDATE (2013 년 1 월 16) : Fancybox의 v2.1.4이 출시되었습니다 지금은의 jQuery v1.9.0와 함께 잘 작동합니다.
fancybox를 들어 당신은 여전히의 jQuery v1.8.3 롤백 또는 마누의 대답 @으로 지적 OUT으로 마이그레이션 스크립트를 적용해야 v1.3.4-.
UPDATE (2013 년 1 월 17 일) : 해결 방법 Fancybox의 v1.3.4의 사용자를위한 :
그것은 다음과 같은의 jQuery v1.9.0 작업을 만들 수있는 fancybox의 JS 파일을 패치 :
또는 여기에서 이미 패치 버전을 다운로드 (감사 여분의 폐쇄 브래킷을 지적 fairylee ... 2013년 3월 19일 업데이트)
참고 :이 그러나 그대로 작동 비공식 패치 및 Fancybox의 저자에 의해 지원되지 않습니다. 당신은 당신의 자신의 위험에 그것을 사용할 수 있습니다)
선택적으로, 다소의 jQuery v1.8.3 롤백 또는 마누의 대답 @으로 지적 OUT으로 마이그레이션 스크립트를 적용 할 수 있습니다.
-
2.안녕하세요이는 jQuery를 => 1.9.0의 새 버전 때문이다
안녕하세요이는 jQuery를 => 1.9.0의 새 버전 때문이다
당신은 업데이트를 확인할 수 있습니다 : http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-0-beta-migrate-final-released/
jQuery.Browser이되지 않습니다. 당신은 마이그레이션 스크립트를 추가하여 최신 버전을 유지할 수 있습니다 : http://code.jquery.com/jquery-migrate-1.0.0.js
대체 :
<script src="http://code.jquery.com/jquery-latest.js"></script>
로 :
<script src="http://code.jquery.com/jquery-latest.js"></script> <script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script>
페이지와 작업한다.
-
3.글로벌 이벤트도되지 않습니다.
글로벌 이벤트도되지 않습니다.
여기에 브라우저 및 이벤트 문제를 해결하는 패치가있다 :
--- jquery.fancybox-1.3.4.js.orig 2010-11-11 23:31:54.000000000 +0100 +++ jquery.fancybox-1.3.4.js 2013-03-22 23:25:29.996796800 +0100 @@ -26,7 +26,9 @@ titleHeight = 0, titleStr = '', start_pos, final_pos, busy = false, fx = $.extend($('<div/>')[0], { prop: 0 }), - isIE6 = $.browser.msie && $.browser.version < 7 && !window.XMLHttpRequest, + isIE = !+"\v1", + + isIE6 = isIE && window.XMLHttpRequest === undefined, /* * Private methods @@ -322,7 +324,7 @@ loading.hide(); if (wrap.is(":visible") && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { - $.event.trigger('fancybox-cancel'); + $('.fancybox-inline-tmp').trigger('fancybox-cancel'); busy = false; return; @@ -389,7 +391,7 @@ content.html( tmp.contents() ).fadeTo(currentOpts.changeFade, 1, _finish); }; - $.event.trigger('fancybox-change'); + $('.fancybox-inline-tmp').trigger('fancybox-change'); content .empty() @@ -612,7 +614,7 @@ } if (currentOpts.type == 'iframe') { - $('<iframe id="fancybox-frame" name="fancybox-frame' + new Date().getTime() + '" frameborder="0" hspace="0" ' + ($.browser.msie ? 'allowtransparency="true""' : '') + ' scrolling="' + selectedOpts.scrolling + '" src="' + currentOpts.href + '"></iframe>').appendTo(content); + $('<iframe id="fancybox-frame" name="fancybox-frame' + new Date().getTime() + '" frameborder="0" hspace="0" ' + (isIE ? 'allowtransparency="true""' : '') + ' scrolling="' + selectedOpts.scrolling + '" src="' + currentOpts.href + '"></iframe>').appendTo(content); } wrap.show(); @@ -912,7 +914,7 @@ busy = true; - $.event.trigger('fancybox-cancel'); + $('.fancybox-inline-tmp').trigger('fancybox-cancel'); _abort(); @@ -957,7 +959,7 @@ title.empty().hide(); wrap.hide(); - $.event.trigger('fancybox-cleanup'); + $('.fancybox-inline-tmp, select:not(#fancybox-tmp select)').trigger('fancybox-cleanup'); content.empty();
-
4.경우에는 사람이 아직 여기 당신이 만드는해야 다른 변화는 3.0 jQuery로 기존 fancybox를 지원해야합니다 :
경우에는 사람이 아직 여기 당신이 만드는해야 다른 변화는 3.0 jQuery로 기존 fancybox를 지원해야합니다 :
.unbind ()는 지원되지 않습니다
.OFF와 .unbind의 모든 인스턴스를 교체
.removeAttribute ()는 함수가 아니다
변경 라인 580-581 대신) jQuery의 .removeAttr를 (사용합니다 :
오래된 코드 :
580: content[0].style.removeAttribute('filter'); 581: wrap[0].style.removeAttribute('filter');
새로운 코드 :
580: content.removeAttr('filter'); 581: wrap.removeAttr('filter');
다른 패치와 함께이 위 내 호환성 문제를 해결 언급했다.
from https://stackoverflow.com/questions/14344289/fancybox-doesnt-work-with-jquery-v1-9-0-f-browser-is-undefined-cannot-read by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 형식 오류가 : $는 jQuery를 함수를 호출하는 기능하지 않습니다 (0) | 2020.09.27 |
---|---|
[JQUERY] 인터넷 연결이 자바 스크립트에 존재하는지 확인? [복제] (0) | 2020.09.27 |
[JQUERY] 루프에서 지정 클릭 핸들러 (0) | 2020.09.27 |
[JQUERY] 배열에 숫자 키를 사용하여 자바 스크립트 객체를 변환 (0) | 2020.09.27 |
[JQUERY] jQuery를 - $ (문서) .ready와 $ (창) .load 사이의 차이점은 무엇입니까? (0) | 2020.09.27 |