我正在尝试在 vanilla js 中做兄弟姐妹()在 jQuery 中所做的事情。我在这里看到了很多有用的解释,但在我的代码中实现它们时遇到了麻烦。
我有一个 div,里面有 4 个按钮。每次我单击一个按钮时,都会向该按钮添加一个类(.btn-anim)(到目前为止还可以)。我想要做的是当我单击其中一个按钮(已经没有该类)以删除任何其他按钮的类并将其添加到单击的按钮时。
我的 HTML 标记:
<div id="js-colors-div">
<button class="yellow"></button>
<button class="green"></button>
<button class="blue"></button>
<button class="pink"></button>
</div>
Run Code Online (Sandbox Code Playgroud)
和JS:
var colorsDiv = document.getElementById('js-colors-div');
var colors = colorsDiv.getElementsByTagName("button");
for (var i = 0; i < colors.length; i++) {
colors[i].onclick = function(e) {
var highlight = e.target;
//trying to achieve this
$(this).addClass('btn-anim').siblings().removeClass('btn-anim');
}
};
Run Code Online (Sandbox Code Playgroud)
这是我添加类的代码
highlight.classList.add('btn-anim'); //
Run Code Online (Sandbox Code Playgroud)