获取css值:hover with .css() – jquery

前端之家收集整理的这篇文章主要介绍了获取css值:hover with .css() – jquery前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我设置一个有不同背景的菜单:悬停颜色.按钮背景将是灰色,并将按钮animate()悬停到其各自的颜色.

我可以抓住原来的默认颜色,无论如何,我将鼠标悬停在此上面:

  1. var origBackgroundColor = $(this).css('background-color');

但是可以从我设置的css:hover属性获取颜色吗?我将具有:为每个按钮设置的悬停颜色,因为如果有人没有启用JS,导航将仍然具有:悬停效果工作.

这样的东西(或有另一种方式):

  1. var hoverColor = $(this).css('background-color:hover');

有任何想法吗?这可能吗?

解决方法

我很确定为了获得以下的背景颜色:hover伪,它首先需要一个浏览器事件来应用样式.换句话说,当你用鼠标悬停时,我想你可以得到它,但直到那时才能得到它.

可以这样,你可以等到用户做一个悬停,然后抓住颜色,用默认值覆盖它,存储它以供将来参考,然后做你的动画,但这可能是更麻烦的只是协调你的JS和CSS.

这样的东西:http://jsfiddle.net/UXzx2/

  1. // grab the default color,and create a variable to store the hovered.
  2. var originalColor = $('div').css('background-color');
  3. var hoverColor;
  4.  
  5. $('div').hover(function() {
  6. // On hover,if hoverColor hasn't yet been set,grab the color
  7. // and override the pseudo color with the originalColor
  8. if( !hoverColor ) {
  9. hoverColor = $(this).css('background-color');
  10. $(this).css('background-color',originalColor);
  11. }
  12. // Then do your animation
  13. $(this).animate({backgroundColor:hoverColor});
  14. });

猜你在找的CSS相关文章