我正在使用一个插件来确定div背景颜色的亮度并动态应用" light"或者"黑暗"上课。我试图抓住该类并将其应用于另一个div,以便根据返回的值设置它。
var topbar = $(".top-bar");
if ($(".quote-block").is( "dark" ) ) {
topbar.addClass('background--dark');
};
if ($(".quote-block").is( "light" ) ) {
topbar.addClass('background--light');
};
为了简化这一点,最好只返回类名并将其附加到"背景 - " (即:"背景 - "加上插件产生的" dark"类,产生.background--dark
)。如何使用JQ实现这一目标?显然我是一个新手,所以任何见解都会受到高度赞赏。
这是预期的结构:
<nav class="top-bar"></nav>
<div class="main-content">
<section class="quote-block light<--dynamic class"></section>
<section class="quote-block dark<--dynamic class"></section>
</div>
答案 0 :(得分:1)
我正在进行此操作,因为您的问题中没有提供HTML。希望这仍然可以帮助你。
function getLight() {
var prefix = "background--";
return $(".quote-block").hasClass("dark") ? (prefix + "dark") :
$(".quote-block").hasClass("light") ? (prefix + "light") : "";
}
$(".top-bar").addClass(getLight());
div {
height: 2em;
}
.background--dark {
background: black;
border: 1px solid white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div class="top-bar"></div>
<div class="quote-block dark"></div>