toggleClass 多个div
toggleClass multiple divs
当我只有一个 div 并且我在 jquery 中使用 'div' 时,此代码有效。
它适用于 <p>
。
当我用 'div:first-of-type'.
精确定位时它甚至可以工作
但是当我使用“#first”或“#second”时,唯一改变的是边框。
当我使用 'div:last-of-type' 时,除背景颜色外,其他一切都会改变。
为什么代码不能正常运行???
<div id="first"></div>
<div id="second"></div>
<p>hello there</p>
<button>button</button>
<style>
div {
width:200px;
height:200px;
background-color:midnightblue;
}
#second {
background-color:darkgreen;
}
p {
width:200px;
height:20px;
background-color:aqua;
}
button {
width:50px;
height:25px;
background-color:brown;
color:yellow;
}
.black {
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
</style>
<script>
$(function() {
$('button').click(function() {
$('#second').toggleClass('black');
});
});
</script>
看,ID 比 class 名称具有更高的优先级。
#second {
background-color:darkgreen;
}
这具有最高优先级并且:
.black {
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
具有最少的一个,但应用了不在 id 选择器中的属性,但不应用 background-color
。
您可以使用 #id.class
覆盖它:
#second.black { /* <------------------this way */
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
你可以用 !important
(虽然不推荐):
.black {
background-color:black !important;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
当我只有一个 div 并且我在 jquery 中使用 'div' 时,此代码有效。
它适用于 <p>
。
当我用 'div:first-of-type'.
但是当我使用“#first”或“#second”时,唯一改变的是边框。 当我使用 'div:last-of-type' 时,除背景颜色外,其他一切都会改变。
为什么代码不能正常运行???
<div id="first"></div>
<div id="second"></div>
<p>hello there</p>
<button>button</button>
<style>
div {
width:200px;
height:200px;
background-color:midnightblue;
}
#second {
background-color:darkgreen;
}
p {
width:200px;
height:20px;
background-color:aqua;
}
button {
width:50px;
height:25px;
background-color:brown;
color:yellow;
}
.black {
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
</style>
<script>
$(function() {
$('button').click(function() {
$('#second').toggleClass('black');
});
});
</script>
看,ID 比 class 名称具有更高的优先级。
#second {
background-color:darkgreen;
}
这具有最高优先级并且:
.black {
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
具有最少的一个,但应用了不在 id 选择器中的属性,但不应用 background-color
。
您可以使用 #id.class
覆盖它:
#second.black { /* <------------------this way */
background-color:black;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}
你可以用 !important
(虽然不推荐):
.black {
background-color:black !important;
border:medium cornsilk dashed;
width:100px;
height:150px;
color:aliceblue;
}