卡在淡入淡出

Posted

技术标签:

【中文标题】卡在淡入淡出【英文标题】:stuck with fadeTo 【发布时间】:2011-08-19 16:38:36 【问题描述】:

我正在尝试淡入/淡出我的超链接。我使用了 fadeTo() 而不是 fadeOut 看到 fadeOut 摆脱了超链接。使用fadeTo,情况并非如此,超链接仍然存在,但不透明度值非常低。我想知道是否可以淡出 a.active 背景并且仍然能够看到正文的文本和底层背景

var fade_to = function()       
    $("a.active").fadeTo("slow", 0.0001);
;

$(document).ready(function()   
    $("a.active").css("display", "none").fadeIn(2000);
    var intervalId = window.setInterval(fade_to, 5000);
);
a.active 
    background: #ff0000;
    width: 246px;
    height: 47px;
    padding-top: 3px;       
    color:  #ffffff;

body 
    background: #000000
  

【问题讨论】:

【参考方案1】:

这个问题的答案应该和this问题的答案差不多;这与使用 <span/> 元素做同样的事情有关。

【讨论】:

【参考方案2】:

如果我理解正确,您需要淡化背景颜色以包含不透明度,例如从 rgba(255,0,0,1)rgba(255,0,0,0)。这在较旧的浏览器中不起作用,因为它们不理解 rgba 颜色,但对于任何当前的浏览器,它都可以。 jQuery 不了解如何为颜色设置动画,因此您需要使用以下内容: http://roxority.com/sharepoint-zen/jquery-color-animations-adding-rgba-alpha-channel-support.html 与 jQuery 结合使用。

如果您真的想这样做,使用 CSS 过渡可能是更好的选择,因为几乎所有 rgba 所在的地方都支持它们。

【讨论】:

【参考方案3】:

您可以完全删除a.active 背景或将其设置为transparent

这可能会做你想做的事:

$("a.active").css("background", "none").fadeTo("slow", 0.0001);

或者

$("a.active").css("background", "transparent").fadeTo("slow", 0.0001);

两者的效果相同,但不会淡出背景。

这是另一个提到褪色背景的问题。 How do I animate a background color to transparent in jQuery?

这可能对您有更多帮助。

【讨论】:

我究竟怎样才能做到这一点?

以上是关于卡在淡入淡出的主要内容,如果未能解决你的问题,请参考以下文章

android 怎么做淡入淡出效果

如何在HTML5中实现文字淡出淡入

jquery淡入淡出div中的背景图像 - 交叉淡入淡出

html想做个文字淡入淡出的效果

delphi 窗体的淡入淡出效果

HTML网页淡入淡出特效怎样实现