首页 >web前端 >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() 和.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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn