Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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_Php_Html_Css - Fatal编程技术网

如何使用JavaScript隐藏和显示多个div

如何使用JavaScript隐藏和显示多个div,javascript,php,html,css,Javascript,Php,Html,Css,如何使用JavaScript隐藏和显示多个div?我不想使用JQuery。我可以让它隐藏和显示一个div,但不能显示多个div。问题源于我使用PHP显示多条记录。这些记录包含在具有相同ID的DIV中 document.getElementById('history slider').addEventListener('click',function()){ document.getElementById('edit-slider')。style.display='block'; documen

如何使用JavaScript隐藏和显示多个div?我不想使用JQuery。我可以让它隐藏和显示一个div,但不能显示多个div。问题源于我使用PHP显示多条记录。这些记录包含在具有相同ID的DIV中

document.getElementById('history slider').addEventListener('click',function()){
document.getElementById('edit-slider')。style.display='block';
document.getElementById('history-slider').style.display='none';
},假);
document.getElementById('edit slider')。addEventListener('click',function(){
document.getElementById('history-slider').style.display='block';
document..getElementById('edit-slider').style.display='none';
},假)
。编辑滑块{
显示:无;
}

标题
Lorem ipsum dolor sit amet,奉献精英

四时



如果使用类而不是ID,则可以使用document.QuerySelectorAll()获取该类的所有div,然后根据需要显示或隐藏

下面类似的内容将使用编辑滑块类隐藏所有div,并使用历史滑块类显示(假设它们已隐藏)所有div

    (function() {
        var editSliders = document.querySelectorAll('div.edit-slider');
        for(var i=0;i<editSliders.length;i++){
            editSliders[i].style.display = 'none';
        }
        var historySliders = document.querySelectorAll('div.history-slider');
        for(var i=0;i<historySliders.length;i++){
            historySliders[i].style.display = 'block';
        }
    })();
(函数(){
var editSliders=document.querySelectorAll('div.edit-slider');

对于(var i=0;i如果使用类而不是ID,则可以使用document.QuerySelectorAll()获取该类的所有div,然后根据需要显示或隐藏

下面类似的内容将使用编辑滑块类隐藏所有div,并使用历史滑块类显示(假设它们已隐藏)所有div

    (function() {
        var editSliders = document.querySelectorAll('div.edit-slider');
        for(var i=0;i<editSliders.length;i++){
            editSliders[i].style.display = 'none';
        }
        var historySliders = document.querySelectorAll('div.history-slider');
        for(var i=0;i<historySliders.length;i++){
            historySliders[i].style.display = 'block';
        }
    })();
(函数(){
var editSliders=document.querySelectorAll('div.edit-slider');

对于(var i=0;i),首先考虑使用<代码>类< /> >而不是<代码> ID <代码>,以设置具有相同属性和值的多个元素。然后,使用以下脚本:

<script type="text/javascript">
  document.querySelectorAll('div.history-slider').forEach(item => {
    item.addEventListener("click", myFunction);
  });
  function myFunction() {
    this.hide;
  }
</script>

document.querySelectorAll('div.history-slider').forEach(item=>{
item.addEventListener(“单击”,myFunction);
});
函数myFunction(){
这个。隐藏;
}

< /代码> 首先考虑使用<代码>类<代码>,而不是<代码> ID <代码>,以设置具有相同属性和值的多个元素。然后,使用以下脚本:

<script type="text/javascript">
  document.querySelectorAll('div.history-slider').forEach(item => {
    item.addEventListener("click", myFunction);
  });
  function myFunction() {
    this.hide;
  }
</script>

document.querySelectorAll('div.history-slider').forEach(item=>{
item.addEventListener(“单击”,myFunction);
});
函数myFunction(){
这个。隐藏;
}

您不应该有超过1个具有相同ID的元素。您的JS基本上只会更改其中的1个,很可能是它找到的最后一个,因为它假设只有1个。您不应该有超过1个具有相同ID的元素。您的JS基本上只会更改其中的1个,很可能是它找到的最后一个s因为它假设只有1个。谢谢eric。尽管我只想隐藏单击的div并只显示其附带的编辑div。谢谢eric。尽管我只想隐藏单击的div并只显示其附带的编辑div。