用jQuery覆盖a:hover?
我用css定义了一个标签。 我正在尝试停止默认样式表
:hover
在标签上的更改。 如何在Jquery中禁用a标记上的hover更改?
以下解决方案的现场演示: http : //jsbin.com/umiru
–
我能想到的最简单的方法是改变:
a:hover { ... }
成
a.someClass:hover { ... }
然后通过jQuery的方法添加/删除.someClass
:
$(this).addClass("someClass"); // activates css rules for :hover $(this).removeClass("someClass"); // deactivates css rules for :hover
这是一个没有黑客类的解决方案:
CSS:
a {color: blue;} a:hover {color: red;}
jQuery(使用jQueryUI为颜色设置动画):
$('a').hover( function() { $(this) .css('color','blue') .animate({'color': 'red'}, 400); }, function() { $(this) .animate({'color': 'blue'}, 400); } );
演示
最简单的方法是为特定的标记创建新的CSS规则。 就像是
a.linkclass:hover {color:samecolor}
如果必须使用JQuery覆盖默认样式,则必须在hover状态下手动添加css规则,如下所示:
$('a.linkclass').hover(function(){ $(this).css({'color':'samecolor'}); });
希望这个帮助
只需在没有“a:hover”的情况下定义CSS
a { color: #fffff }
这个CSS将覆盖a:link,a:hover,a:visited和a:active。