Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 切换DIV'的可见性;点击一下就可以了_Javascript_Html_Dom - Fatal编程技术网

Javascript 切换DIV'的可见性;点击一下就可以了

Javascript 切换DIV'的可见性;点击一下就可以了,javascript,html,dom,Javascript,Html,Dom,我有一百万个div元素 我希望实现以下功能: 当我单击一个vsibilediv时,它消失了 当我单击div时,任何div不可见的都会重新出现 例如: <div>1</div> <!-- Invisible div --> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div&

我有一百万个
div
元素

我希望实现以下功能:

  • 当我单击一个vsibile
    div
    时,它消失了

  • 当我单击
    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
    
    1
    2.
    3.
    4.
    5.
    6.
    ... 1.000.000
    
    prev=false;
    document.queryselectoral(“#test div”).forEach(函数(a,i){
    a、 指数=i;
    a、 addEventListener(“单击”,函数(){
    if(prev!==false)document.queryselectoral(“#test div”)[prev].style.opacity=1;
    this.style.opacity=0;
    prev=本指数;
    })});
    
    #测试*{
    宽度:60px;
    高度:60px;
    利润率:10px;
    背景颜色:绿色;
    }
    
    
    我可以问一下为什么有100万个div元素吗?@AndrewL。你的问题非常模糊——开始的状态是什么,全部显示的还是全部隐藏的,或者只是部分显示的?页面加载后,第一次单击一个div应该做什么?单击一个div后,单击另一个div应该做什么?您的意思是单击一个div应该隐藏该div,并显示任何以前隐藏的div吗?所以在任何给定的时间只有一个div会被隐藏?为了可读性问题,OP似乎不想要jQuery,因为它没有被标记,只是JavaScript被标记。其次,这不是OP想要的。OP想要隐藏之前单击的一个。抱歉,我没有发现那里缺少jQuery标记。另外,我似乎确实误解了这个问题,但我可能会把它留在这里,以防OP的意思是这样的。当你可以只使用纯JS时,没有理由对jQuery过于复杂:)@Miller谢谢你的回答,当我认为我可能误解了这个问题时,我差点把它删除了。:)