jQuery 에서 visibility hidden visible 제어하기
페이지 정보
본문
jQuery 에서 기본 제공하는 함수은 hide() show() 는 display:none 을 사용한다.
그래서, hide 시에 자리차지하는 공간까지 사라져 버린다.
공간을 그대로 두려면, visibility:hidden; 을 사용하면 되는데,
jQuery 에는 기본적으로 이런함수를 제공하지 않기 때문에, 플러그인으로 함수를 만들어 사용할 수 있다.
ㅁ 아래와 같은 플러그인을 만들어 두고 사용하면 편리하다.
jQuery.fn.visible = function() {
return this.css('visibility', 'visible');
};
jQuery.fn.invisible = function() {
return this.css('visibility', 'hidden');
};
jQuery.fn.visibilityToggle = function() {
return this.css('visibility', function(i, visibility) {
return (visibility == 'visible') ? 'hidden' : 'visible';
});
};
ㅁ 기본함수인 toggle() 을 대체하는 방법도 있다.
!(function($) {
var toggle = $.fn.toggle;
$.fn.toggle = function() {
var args = $.makeArray(arguments),
lastArg = args.pop();
if (lastArg == 'visibility') {
return this.visibilityToggle();
}
return toggle.apply(this, arguments);
};
})(jQuery);
** 출처 : http://stackoverflow.com/questions/9614622/equivalent-of-jquery-hide-to-set-visibility-hidden
그래서, hide 시에 자리차지하는 공간까지 사라져 버린다.
공간을 그대로 두려면, visibility:hidden; 을 사용하면 되는데,
jQuery 에는 기본적으로 이런함수를 제공하지 않기 때문에, 플러그인으로 함수를 만들어 사용할 수 있다.
ㅁ 아래와 같은 플러그인을 만들어 두고 사용하면 편리하다.
jQuery.fn.visible = function() {
return this.css('visibility', 'visible');
};
jQuery.fn.invisible = function() {
return this.css('visibility', 'hidden');
};
jQuery.fn.visibilityToggle = function() {
return this.css('visibility', function(i, visibility) {
return (visibility == 'visible') ? 'hidden' : 'visible';
});
};
ㅁ 기본함수인 toggle() 을 대체하는 방법도 있다.
!(function($) {
var toggle = $.fn.toggle;
$.fn.toggle = function() {
var args = $.makeArray(arguments),
lastArg = args.pop();
if (lastArg == 'visibility') {
return this.visibilityToggle();
}
return toggle.apply(this, arguments);
};
})(jQuery);
** 출처 : http://stackoverflow.com/questions/9614622/equivalent-of-jquery-hide-to-set-visibility-hidden
추천0
댓글목록
등록된 댓글이 없습니다.