2011-03-15 61 views
5

在页面准备就绪我想运行一个函数,将获得CSS背景图像设置,并且还希望以另一种方式使用悬停背景图像设置。jQuery获取CSS悬停值

我已经看到要实现这一点的唯一方法需要有人在获取值之前实际将鼠标悬停在元素上。

任何人都有办法?

这是如何得到一个css非悬停值:

$(this).css('background-color'); 
+0

你试过$( “#” + this.id + “:HOVER”)。CSS(“背景-颜色”); ? – AbiusX

回答

4

要做到这一点,你需要从样式表直接读取值。基本思想是遍历document.styleSheets中的每个样式表,并在其中遍历.cssRules.rules中的每个规则,查找与您所匹配的.selectorText匹配的规则。

为了简化事情,我为此写了一个(小)库 - JSS。如果你有一个选择,例如#someId:hover,然后使用JSS,你可以得到它的background-color属性搭配:

jss('#someId:hover').get()['background-color'] 
+0

jss未能通过实际测试,alas:jss(“#espacio_publico”)。get() - > TypeError:无法读取null属性的'length' –