3 回答
TA贡献1865条经验 获得超7个赞
恐怕没有纯粹的JavaScript通用解决方案。JavaScript无法关闭CSS :hover状态本身。
您可以尝试以下替代解决方法。如果您不介意在HTML和CSS中多花钱,那么您不必通过JavaScript手动重置每个CSS属性。
的HTML
<body class="nojQuery">
的CSS
/* Limit the hover styles in your CSS so that they only apply when the nojQuery
class is present */
body.nojQuery ul#mainFilter a:hover {
/* CSS-only hover styles go here */
}
的JavaScript
// When jQuery kicks in, remove the nojQuery class from the <body> element, thus
// making the CSS hover styles disappear.
$(function(){}
$('body').removeClass('nojQuery');
)
TA贡献1835条经验 获得超7个赞
使用仅分配了悬停的第二类:
的HTML
<a class="myclass myclass_hover" href="#">My anchor</a>
的CSS
.myclass {
/* all anchor styles */
}
.myclass_hover:hover {
/* example color */
color:#00A;
}
现在,您可以使用Jquery删除该类,例如,如果元素已被单击:
JQUERY
$('.myclass').click( function(e) {
e.preventDefault();
$(this).removeClass('myclass_hover');
});
希望这个答案有帮助。
添加回答
举报