如何在点击时获得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)