我需要做的是添加CSS到一个段落标签,如果它有样式=背景颜色:#aaddff;
我有以下内容,但有些地方不太正确,因为没有添加边框。
我是否需要使用element.style,或者是完全不同的东西?
<script type="text/javascript">
$(function () {
$('p').filter(function () {
return $(this).css("background-color") === "#aaddff";
})
.css("border", "2px solid black");
});
</script>
</head>
<body>
<div>
<p class="test" style="background-color:#aaddff;">Hello</p>
<p class="test" style="background-color:blue;">Hello</p>
<p class="test" style="background-color:#aaddff;">Hello</p>
</div>
</body>发布于 2018-04-17 20:07:29
$(this).css("background-color")将返回颜色的RGB值,因此您必须比较该值,而不是十六进制值:
$('p').filter((_, e) => $(e).css("background-color") == "rgb(170, 221, 255)")
.css("border", "2px solid black");<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="test" style="background-color:#aaddff;">Hello</p>
<p class="test" style="background-color:blue;">Hello</p>
<p class="test" style="background-color:#aaddff;">Hello</p>
发布于 2018-04-17 20:10:49
正如您在http://api.jquery.com/css/中看到的,JQuery在"css“函数中返回的是RGB值,而不是十六进制代码。
您可以使用代码in this answer来转换为十六进制。
https://stackoverflow.com/questions/49877640
复制相似问题