在 jQuery 中,你能在不丢失元素空间的情况下 fadeOut() 吗? (不可见与显示:无)

发布于 2024-09-06 02:24:27 字数 107 浏览 4 评论 0原文

因为我需要 fadeIn() 另一个相同大小的元素返回,有没有一种方法可以 fadeOut() 元素以便保留空间,以便其他元素不会瞬间重新流动,然后fadeIn() 会带回另一个具有相同大小的元素吗?

Because I need to fadeIn() another element of the same size back in, is there a way to fadeOut() the element so that the space is kept, so that the other elements are not re-flowed for a split second and then the fadeIn() will bring back another element with the same size?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

晚雾 2024-09-13 02:24:27

我想到了两种技术:

  1. 将元素包装在占据正确空间量的 div 中。
  2. 使用 .animate 方法将项目的不透明度从 100% 更改为 0%,然后,当动画完成后,交换新元素并再次使用 animate 将不透明度从 0% 更改为 100%。

Two techniques come to mind:

  1. Wrap the element in a div which occupies the correct amount of space.
  2. Use the .animate method to change the opacity of the item from 100% to 0%, then, when the animation completes, swap the new element in and once again use animate to change the opacity from 0% to 100%.
几度春秋 2024-09-13 02:24:27

我的建议是你用 div 包裹它...并在该 div 上放置相同的尺寸...

my suggestion is you wrap it with div... and put the same dimension on that div...

葬シ愛 2024-09-13 02:24:27

将要淡入淡出的元素保留在固定的

内,然后如果您隐藏其中的元素,它将完全不影响布局。

Keep the element you want to fade inside a fixed <div style="display:block;width:300px;height:200px;">, then if you hide the element inside it, it will not affect the layout at all.

放低过去 2024-09-13 02:24:27

我已经自己修复了。在运行 fadeOut 之前,我运行此函数:

    /**
     * Keep the window height, to avoid user being thrown up (i.e. on fade out, remove, hide, etc)
     */

        function keepHeight() {
            $('body').css('min-height', $(document).height());
        }

例如:

/**
 * Keep window height
 */

    keepHeight();

/**
 * Fade out
 */

    $('#someDiv').fadeOut();

I have made my own fix. Before I run the fadeOut, I run this function:

    /**
     * Keep the window height, to avoid user being thrown up (i.e. on fade out, remove, hide, etc)
     */

        function keepHeight() {
            $('body').css('min-height', $(document).height());
        }

So for instance:

/**
 * Keep window height
 */

    keepHeight();

/**
 * Fade out
 */

    $('#someDiv').fadeOut();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文