【发布时间】:2022-02-12 23:49:56
【问题描述】:
所以当我使用toggleClass 单击引导按钮类时,我正在使用 Jquery 尝试更改引导按钮类,但问题是我只能在 2 个类之间切换,而 不能 我想要什么,每次点击按钮时,我都想在至少 5 个或更多类之间切换,但我找不到方法
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8" />
<title>toggle</title>
<link
rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"
/>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<script>
$(document).ready(function () {
$("button").click(function () {
$(this).toggleClass("btn btn-success btn btn-info btn btn-primary");
});
});
</script>
<style>
#p {
position: absolute;
top: 50%;
left: 50%;
}
</style>
<body>
<button id="p" class="btn btn-success">Random button</button>
</body>
</html>
【问题讨论】:
-
.toggleClass("btn btn-success btn btn-info btn btn-primary")调用的预期结果是什么?为什么btn在里面出现了三遍? -
看起来你误解了“toggleClass”的作用。它本质上是:
foreach (var b in buttons) { foreach (var cls in buttonClasses) { if (b.hasClass(cls) b.removeClass(cls) else b.addClass(cls) } }。这不是“添加类回来如果它之前被删除”看看这个简单的例子:jsfiddle.net/6qw90vgo -
@freedomn-m 哦,谢谢你的解释,但是我需要什么才能达到我需要的结果?
-
很难准确地说出您要做什么,但看起来您正在尝试切换类 btn-xxx - 对吗?
-
是的,我正在尝试在多个 btn 类之间切换,以改变我每次点击按钮的外观
标签: javascript jquery css bootstrap-4