javascript - 单击时切换 DIV 的可见性

标签 javascript html dom

我有一百万个 div 元素。

我想实现以下功能:

  1. 当我点击一个 vsibile div 时,它会消失。

  2. 当我点击一个 div 时,任何 不可见div 都会重新出现。

例子:

<div>1</div> <!-- Invisible div -->
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div> <!-- Currently visible. On click, div 1 becomes visible and this becomes invisible-->
... 1.000.000

最佳答案

prev = false;

document.querySelectorAll("#test div").forEach(function(a,i){
  a.index = i;
  a.addEventListener("click",function(){
  if (prev !== false) document.querySelectorAll("#test div")[prev].style.opacity = 1;
  this.style.opacity = 0;
  prev = this.index;
})});
#test * {
  width: 60px;
  height: 60px;
  margin: 10px;
  background-color: green;
}
<div id="test">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

关于javascript - 单击时切换 DIV 的可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39302266/

相关文章:

javascript 对象操作、代码分割

javascript - 使用javascript从url中获取图像

javascript - 如何在 javascript 中插入带有 innerHTML 的 php 数组

javascript - Javascript 的 HTMLCollection 中的对象变量比较

javascript - 无法使用回调来获取 ajax 调用的响应

javascript - 尝试在 Javascript 中执行空合并运算符时出错

javascript - Iframe 不尊重高度属性

jquery - Bootstrap Carousel 只加载一张图片

javascript - 如何使用原型(prototype)在 HTML 中的当前位置插入元素

javascript - 超时后无法删除新添加的 HTML 元素