ホームページ >ウェブフロントエンド >CSSチュートリアル >「display」を使用せずにjQueryで可視性を非表示に設定するにはどうすればよいですか?

「display」を使用せずにjQueryで可視性を非表示に設定するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-08 03:10:14427ブラウズ

How Can I Set Visibility to Hidden in jQuery Without Using `display`?

jQuery の可視性を非表示に設定するのと同等

jQuery では、.show() メソッドと .hide() メソッドを操作に一般的に使用します。表示プロパティを使用して、要素の表示/非表示を切り替えます。ただし、可視性プロパティを具体的に設定するための同等の組み込み関数はありません。

カスタム プラグイン ソリューション

これに対処するには、独自のカスタム プラグインを作成できます。

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';
    });
};

これにより、.visible()、.invisible()、および .invisible() などの特定のメソッドを使用できるようになります。 .visibilityToggle() を使用して、可視性プロパティを設定または切り替えます。

jQuery の toggle() をオーバーライドします

または、既存の 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);

これにより、次のことが可能になります。 toggle('visibility') は、可視性プロパティを切り替えます。ただし、組み込みメソッドをオーバーライドすることは一般的に推奨されません。

以上が「display」を使用せずにjQueryで可視性を非表示に設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。