JQuery addClass 失效原因
作者:互联网
在写css样式时候,为了限定子元素范围一般嵌套父层class,但会导致JQuery:addClass失效
因为嵌套父层class优先级大于普通class
例如
<style>
.circle li {background-color:red}
.changecolor {background-color:black}
.circle .change {background-color:black}
</style>
<body>
<div class="circle">
<ul>
<li>123</li>
<ul>
</div>
</body>
例如写一段JQuert通过鼠标经过改变li的背景颜色,通过直接用class元素覆盖之
$(".circle li").mouseenter(
{
$(this).addClass("changecolor");
})
会发现覆盖失败,因为原来带父级的类优先级大于不带父级的类,一共有三种解决方法
第一:让覆盖元素写成带有父级的类
$(".circle li").mouseenter(
{
$(this).addClass(".circle change");
})
第二:添加!important 将类设置成最高优先级
.changecolor {background-color:black !important}
第三: 通过JQuert.css方法改变元素的属性
$(".circle li").mouseenter(
{
$(this).css("background","black");
})
标签:JQuery,color,li,black,background,失效,circle,class,addClass 来源: https://blog.csdn.net/RETURN100ERRORS/article/details/113737120