JQuery:以允许 .fadeIn() 工作的方式隐藏启动对象

Posted

技术标签:

【中文标题】JQuery:以允许 .fadeIn() 工作的方式隐藏启动对象【英文标题】:JQuery: Start object as hidden in a way that allows .fadeIn() to work 【发布时间】:2011-04-13 23:38:13 【问题描述】:

我有一个想要隐藏的对象。我尝试一次使用这些样式中的每一种。我将它们放在一个类中,而不是作为内联样式。

display:none;

opacity:0;filter:alpha(opacity=0);

现在,这两者都有效,对象加载隐藏。问题是当我使用这些时,JQuery .fadeIn() 函数不起作用。事实上,当我将不透明度设置为 0.5 (50) 时,淡入只会淡入 0.5 (50)。

那么我可以将对象默认为什么才能让 .fadeIn() 函数工作?

谢谢!

【问题讨论】:

如果你只使用display:none fadeIn() 应该可以工作。这是一个示例:jsfiddle.net/n7FzR/1 你确定你没有尝试fadeIn你附加这些样式的元素的子元素吗? 【参考方案1】:

带有工作版本的代码

html

<html>
    <body>
        <p>test</p>
    </body>
</html>

jQuery​

$(document).ready(function() 
 $('p').fadeTo('slow', 1, function() 
      // Animation complete.
    );
);

CSS

p 
    display:none;
    opacity:0.0;
    filter:alpha(opacity=0);

​

现场演示

http://jsfiddle.net/2p2v4/

【讨论】:

根据您的布局,您可能不想以display:none; 开头,幸运的是,没有它似乎也可以。【参考方案2】:

你可以使用下面写的或者只是在页面底部添加你的代码

.fadeInOnLoad

  display:none;


      <div class="fadeInOnLoad">iam visible after page is loaded</div>

      jQuery(function()
           // your fade in code, call it after dom is ready
            jQuery('.fadeInOnLoad').fadeIn();
        );

我认为你的问题是

您在调用之前调用淡入 dom 元素在浏览器中创建

或者使用 jQuery,visual studio 版本,我记得有一些 Visual Studio 版本中 jQuery 不透明度的问题

【讨论】:

以上是关于JQuery:以允许 .fadeIn() 工作的方式隐藏启动对象的主要内容,如果未能解决你的问题,请参考以下文章

jquery fadeIn 是如何工作的?用 animate() 做同样的事情

JQuery fadeIn fadeOut 与 setInterval 偶尔工作

jQuery.fadeIn 和 fadeOut 的 CSS3 替换

fadeIn 和 fadeOut 的 jquery 问题

jQuery。前置淡入(错误)

jQuery效果-----fadeIn()fadeOut()fadeToggle()fadeTo()