
建立jQuery 函數來操作CSS 可見性
在jQuery 中,.hide() 和.show() 方法可以方便地設定CSS 顯示屬性分別為none 和block。但是,是否有類似的函數可以明確地將 CSS 可見性屬性設為隱藏?
解決方案
雖然 jQuery 沒有提供專門用於設定可見性的原生函數,您可以輕鬆創建自己的。
創建自定義可見性函數:
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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' ;
});
};
|
登入後複製
使用示例:
1 2 3 | $( '#element' ).visible();
$( '#element' ).invisible();
$( '#element' ).visibilityToggle();
|
登入後複製
重載原生的toggle()函數(不推薦):
1 2 3 4 5 6 7 8 9 10 11 12 13 | !( 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);
|
登入後複製
這允許您使用toggle('visibility') 作為切換可見性的捷徑。但是,通常不建議這樣做,因為它可能會覆蓋其他上下文中切換()的預設行為。
互動式 jsFiddle 示範:
https://jsfiddle。網/
以上是如何建立 jQuery 函數來控制 CSS 可見性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!