[英]How to manipulate css using javascript?
我试图在使用 javascript 单击按钮时操作 css。 我只想激活一个最近点击的按钮。
我能够使其处于活动状态,但不知何故我无法为未选择的其他人删除活动状态
这是我在 js 中尝试过的
const myFunction = (event) => { const clickedElem = event.target const allBtns = document.querySelectorAll('.btn.lightblue') allBtns.forEach(btn => btn.classList.remove('.btn.lightblue.active')) clickedElem.classList.add('active') }
<p> <button onclick="myFunction(event)" class="btn lightblue">XASD</button> <button onclick="myFunction(event)" class="btn lightblue">QWER</button> <button onclick="myFunction(event)" class="btn lightblue">ASDF</button> <button onclick="myFunction(event)" class="btn lightblue">ZXCV</button> </p>
查看remove
方法的定义:
tokenList.remove(token1[, token2[, ...tokenN]]);
它将您要删除的每个类作为单独的参数(每个类中带有一个类名的字符串)。
CSS 选择器不需要一个参数。
...而且您可能只想删除active
类,而不是btn
或lightblue
。
在btn.classList.remove
上使用remove
函数时,请只输入className
。
const myFunction = (event) => { const clickedElem = event.target const allBtns = document.querySelectorAll('.btn.lightblue') allBtns.forEach(btn => btn.classList.remove('active')) clickedElem.classList.add('active') }
.active { background: red; }
<p> <button onclick="myFunction(event)" class="btn lightblue">XASD</button> <button onclick="myFunction(event)" class="btn lightblue">QWER</button> <button onclick="myFunction(event)" class="btn lightblue">ASDF</button> <button onclick="myFunction(event)" class="btn lightblue">ZXCV</button> </p>
您可以使用 1) Element.style = "..." 或 2) Element.classList.add("...")
到
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.