[이윰] jQuery-1.8.3를 jQuery-1.9.x 이상으로 업그레이드시 masonry 오류 해결하기
페이지 정보
shadow2fox
2,625
2018.08.22 19:45:06
짧은주소
-
https://yadolee.com/tip/581 주소복사
본문
jQuery-1.8.3를 jQuery-1.9.x 이상으로 업그레이드시 masonry 오류 해결하기
그누보드에 기본 탑재되어 사용되는 jQuery-1.8.3를 jQuery-1.9.x 이상으로 업그레이드할 경우 모달창과 무한스크롤과 연계된 masonry 소스로 인해 다음과 같은 오류가 나타난다.
cannot call methods on masonry prior to initialization; attempted to call method 'appended'
이윰빌더에서 제공하는 스킨 중 갤러리(시즌3) or 블로그(시즌2) 스킨 list.skin.html를 열어 다음과 같이 수정한다.
수정 전
cannot call methods on masonry prior to initialization; attempted to call method 'appended'
이윰빌더에서 제공하는 스킨 중 갤러리(시즌3) or 블로그(시즌2) 스킨 list.skin.html를 열어 다음과 같이 수정한다.
수정 전
function( newElements ) {
var $newElems = $( newElements ).css({ opacity: 0 });
$newElems.imagesLoaded(function(){
$newElems.animate({ opacity: 1 });
$container.masonry( 'appended', $newElems, true );
});
var gutter = 17;
var min_width = 170;
$container.imagesLoaded( function(){
$container.masonry({
itemSelector : '.gallery-item',
gutterWidth: gutter,
isAnimated: true,
columnWidth: function( containerWidth ) {
var windowSize = $(window).width();
if (windowSize > 1199) {
var box_width = (((containerWidth - 2*gutter)/3) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/3) | 0);
}
} else if (windowSize <= 1199 && windowSize > 766) {
var box_width = (((containerWidth - 1*gutter)/2) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/2) | 0);
}
} else if (windowSize <= 766 && windowSize > 566) {
var box_width = (((containerWidth - 1*gutter)/2) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/2) | 0);
}
} else {
var box_width = (((containerWidth - 0*gutter)/1) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/1) | 0);
}
}
if (box_width < min_width) {
box_width = containerWidth;
}
$('.gallery-item').width(box_width);
setTimeout(function() {
$('.gallery-item').show();
}, 0);
return box_width;
}
});
});
});
수정 후
function( newElements ) {
var gutter = 17;
var min_width = 170;
$container.imagesLoaded( function(){
$container.masonry({
itemSelector : '.gallery-item',
gutterWidth: gutter,
isAnimated: true,
columnWidth: function( containerWidth ) {
var windowSize = $(window).width();
if (windowSize > 1199) {
var box_width = (((containerWidth - 2*gutter)/3) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/3) | 0);
}
} else if (windowSize <= 1199 && windowSize > 766) {
var box_width = (((containerWidth - 1*gutter)/2) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/2) | 0);
}
} else if (windowSize <= 766 && windowSize > 566) {
var box_width = (((containerWidth - 1*gutter)/2) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/2) | 0);
}
} else {
var box_width = (((containerWidth - 0*gutter)/1) | 0) ;
if (box_width < min_width) {
box_width = (((containerWidth - gutter)/1) | 0);
}
}
if (box_width < min_width) {
box_width = containerWidth;
}
$('.gallery-item').width(box_width);
setTimeout(function() {
$('.gallery-item').show();
}, 0);
return box_width;
}
});
});
var $newElems = $( newElements ).css({ opacity: 0 });
$newElems.imagesLoaded(function(){
$newElems.animate({ opacity: 1 });
$container.masonry( 'appended', $newElems, true );
});
});
소스를 보면 알겠지만 masonry가 무한스크롤보다 먼저 초기화되야 언급된 오류가 일어나지 않는다.
이윰빌더
jQuery
1.8.3
1.9.x
이상
업그레이드
masonry
masonry prior to initialization
attempted to call method
appended
오류
해결하기
추천인
레벨 154
경험치 3,573,464
Progress Bar 84.78%
- 가입일 : 2015-03-10 12:21:44
- 서명 : 인간에게 가장 큰 선물은
자기 자신에게 기회를 주는 것이다.
- 크리스 가드너, Chris Gardner -
- 자기소개 : There's never a shortcut to happiness.
-
[공유 자료실] NewFileTime 8.16 - 파일, 폴더 타임스탬프 수정 프로그램2026-01-27
-
[공유 자료실] Notepad++ 8.9.12026-01-27
-
[생활 정보] [판매중] 빙그레 요플레 플레인 화이트 900g 2개 (9,990원 / 무료)2026-01-27
-
[생활 정보] [판매중] 포카리스웨트 340ml x 48캔 (29,880원 / 무료)2026-01-27
-
[생활 정보] [판매중] 삼다수 그린(무라벨) 2L 24개입 (20,740원 / 무료)2026-01-25
-
[좋은 생각] 예의 바른 사람2026-01-24
-
[좋은 생각] 모든 고통은 기쁨이 되기 위한 과정이다2026-01-24
-
[좋은 생각] 아름다운 글은 마음에 남고 진실된 친절은 세상을 유영한다2026-01-24
-
[일일 메모장] 안타까운 소식입니다. 민주 진영의 거목이였던 이해찬 전 대표님 정말 고생 많으셨습니다. 이제 편히 쉬십시오.2026-01-25
-
[자유 게시판] 올 한 해도 잘 부탁드립니다. 새해 복 많이 받으세요.2026-01-06
-
[일일 메모장] 무슨 말이 필요할까요 삼가 조의를 표하며 고인의 명복을 빕니다 영면하세요2026-01-05
-
[생활 정보] 이번 년도도 잘 정리해 주셨네요 감사드립니다2026-01-01
-
[자유 게시판] 새해 맞기 전 마지막 날을 좀 더 멋지게 보내고 싶은데 늘 마음 뿐이네요 활기차고 신난 새해로 시작되시길 빌어요 올 한 해도 화이팅입니다2026-01-01
-
[자유 게시판] 메리 크리스마스 행복이 넘쳐 흘러 기쁨을 만끽하는 하루 그런 날 되세요2025-12-25
-
[자유 게시판] 1990년대를 살았던 우리들의 꽃피던 시절은 시끌벅쩍하고 그토록 화려했던 것 같습니다. 세상에 맞선 용기는 사라지고 조심성만 커져 버린 오늘의 삶이지만 어제보다 더 나은 오늘, 오늘 보다 더 나은 미래를 그리는 그런 삶을 그려 나가길 기원합니다. 메리 크리스마스! 행복한 성탄절되세요!!2025-12-24
-
[이슈와 관심] 비난하거나 질책할 순 있겠으나 최소 지난 날의 청소년 범죄에 대해 죗값을 치루었고 현재를 사는 그가 무슨 또 다른 범죄를 저지른 것도 아닌데 지난 날의 과오가 그리도 중요한 듯 찌라시 수준의 작태에 눈살이 찌뿌려집니다. {페이스북}2025-12-07



댓글
첫 번째 댓글을 남겨 주세요