如何在点击时获得csshover值?

关注这个问题 ,我还有另一个问题 – 如何在单击文本链接时获取csshover值?

例如,我有文本hover的这些值

a.test { text-decoration:none; } a.test:hover { text-decoration:none; opacity:0.6 !important; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; filter:alpha(opacity=60) !important; } Click Me 

这当然失败了!

 $(".test").click(function(){ alert($(this).css()); return false; }) 

可能吗?

我遇到了类似的问题,但我不想使用该插件。

你可以做这样的事情,你可以在其中创建自己的css属性列表,这些属性将应用于该元素(假设你有一个列表),然后循环遍历它们:

 var cssList = ['text-decoration','opacity','filter']; $(".test").click(function(){ for(x in cssList){ alert($(this).css(cssList[x])); } return false; }) 

示例: http : //jsfiddle.net/jasongennaro/GmWCz/

当然,如果你需要的话,你可以把这一切都添加到所有属性中。

HTML更改,添加额外的类:

 Click Me 

CSS更改,修改hover选择器:

 a.test.apply-hover:hover { ... 

JS更改,在click事件中删除’apply-hover’类:

 $(this).removeClass('apply-hover'); 

示例: http : //jsfiddle.net/bGKE7/1/

这样做的正确方法似乎是创建样式标记并直接重新分配hover属性。 我在这里有一个工作的例子。

(信用到期的信用 – 我从这里定义的函数得到了)

看看这里

这是.css()方法的重新实现(读取:duck punching)

这是DEMO