一次切换多个元素

时间:2016-02-22 15:53:06

标签: javascript html css

这个简单的小提琴:

https://jsfiddle.net/qLy74d8a/2/

是否有一种简单的方法可以使单击变成蓝色然后如果点击另一个变成蓝色而第一个变成黑色,即任何时候只有一个是蓝色的?

turnBlue() {
    number = document.getElementsByTagName("a");
}

1 个答案:

答案 0 :(得分:0)

以下是您的小提琴的更新版本,它会将点击的元素变为蓝色,并将之前点击的最后一个元素恢复为黑色:https://jsfiddle.net/2qam25u1/

var previousTarget;
function turnBlue(event) {
    if (previousTarget) {
    previousTarget.className = "";
  }

    event.target.className = "blue";
  previousTarget = event.target;
}

previousTarget变量由turnBlue函数包装,在这种情况下充当全局状态变量。 turnBlue函数使用浏览器提供的event参数来查找单击的元素,并将此元素保存到previousTarget中,以便我们可以在单击下一个元素时还原更改。 / p>