2012-03-18 50 views
1

我想为所有链接的颜色变化添加动画。我的意思是,没有任何Javascript,当一个链接悬停时,它的颜色会立即改变。我想要做的是,当你悬停一个链接时,它的颜色应该与jQuery的$ .animate函数一步一步地改变。如何使用jQuery从CSS获取颜色属性?

在这里很容易做到。但事情是,我不想为每种链接类型编写RGB代码。我希望jQuery知道链接悬停时链接的颜色。

如果你不理解我,直到这里,让我用一个例子解释:

 

    $('a').hover(function() { 
     $(this).animate({ 'color', $(this + ':hover').css('color') }, { duration: 250 }); 
    }, function() { 
     $(this).animate({ 'color', $(this).css('color') }, { duration: 250 }); 
    }); 

我知道这个代码将无法正常工作,但我认为这说明了什么,我需要明确。

+0

您是否考虑过css3过渡效果?这将是更容易和更高效的方式来做这种效果。 – algi 2012-03-18 18:48:05

+0

CSS3转换真的是您尝试实现的效果的方式。浏览器的支持并不是很好,但它变得越来越好,即使你找到了一个可以帮助这种效果的jQuery插件,它可能会被放弃,而且确实很麻烦。 – Dropped43 2012-03-18 19:01:52

+0

我尝试过CSS3转换。但它在IE中不受支持。我的设计必须支持IE。所以我不能使用它。不管怎么说,还是要谢谢你。 – Hkan 2012-03-19 20:55:40

回答

0
var color = $('element').css('color'); 

如果您通过rgb(红色,绿色,蓝色)等RGB样式设置,则不必执行十六进制变换。你可以很容易地从0-255改变颜色。

我用RGB做了类似的事情看看http://www.homeschoolsnowboarding.com要耐心等待,慢慢看背景颜色。