Ⅰ JS先获取元素输出,再改变类名,为什么输出的元素是改变后的类名
在这段代码中,首先使用 document.querySelector("div") 获取了一个名为 a 的元素。然后,在后续的代码中,将 a 元素的类名更改为 box2。
由于 JavaScript 代码是在运行时执行的,而不是在编译时执行的,因此更改类名的操作发生在 console.log(a) 之前,因此 a 元素现在具有 box2 类的值。
当 console.log(a) 被执行时,浏览器会打印出当前 a 元素的值,这通常是 <div class="box1"></div>,其中 class="box1" 表示该元素具有一个为"box1"的类名。在这个例子中,由于已将 a 元素的类名更改为 box2,因此浏览器会打印出 box2 的值,即 <div class="box2"></div>。
需要注意的是,更改元素的类名通常用于样式表,而不是在 JavaScript 中更改元素的属性。在 JavaScript 中,您可以使用 Element.classList.add() 和 Element.classList.remove() 方法来更改元素的类名。
这个例子中可以这样试试:
let a=document.querySelector("div");
console.log(a);
a.classList.remove("box1")
a.classList.add("box2")
Ⅱ 用JS实现点击任一按钮只有那个按钮显示被按下去了
<script>
属 varlast;
varbtns=document.querySelectorAll(".dropbtn");
for(vari=0;i<btns.length;i++){
btns[i].onclick=function(){
last?last.classList.remove("bak"):0;
this.classList.add("bak");
last=this;
};
}
</script>