Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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 显示/隐藏元素并在它们之间切换_Javascript_Html_Css - Fatal编程技术网

Javascript 显示/隐藏元素并在它们之间切换

Javascript 显示/隐藏元素并在它们之间切换,javascript,html,css,Javascript,Html,Css,我有两个隐藏的元素。单击按钮a时,我希望显示div a。单击按钮b时,我希望分区a关闭,分区b显示 但是,如果按钮a在显示后再次单击,我希望它再次隐藏div。按钮b也一样 更新: 我能让按钮正确切换 但是,在初始加载时,我希望它们被隐藏,或者在单击按钮之前不可见 下面是我当前的javascript function openFamily(evt, famName) { var i, x, y, tablinks; x = document.getElemen

我有两个隐藏的元素。单击按钮a时,我希望显示div a。单击按钮b时,我希望分区a关闭,分区b显示

但是,如果按钮a在显示后再次单击,我希望它再次隐藏div。按钮b也一样

更新:

我能让按钮正确切换

但是,在初始加载时,我希望它们被隐藏,或者在单击按钮之前不可见

下面是我当前的javascript

  function openFamily(evt, famName) {

        var i, x, y, tablinks;
        x = document.getElementsByClassName("family");
        for (i = 0; i < x.length; i++) {
            x[i].style.display = "none";
        }

        tablinks = document.getElementsByClassName("familytablink");
        for (i = 0; i < x.length; i++) 

        document.getElementById(famName).style.display = "block";

    }
}

HTML:


西番雅
安娜
填充文本
填充文本

您可以在Jquery中使用隐藏和显示功能,并在单击按钮时使用该功能,如下所示:

在jQuery中:

 <script type="application/javascript">
    $(document).ready(function(){
      $("#button1").click(function(){
        $("diva").show();
      });
      $("#button2").click(function(){
        $("diva").hide();
        $("divb").show();

      });
    });
    </script>

$(文档).ready(函数(){
$(“#按钮1”)。单击(函数(){
$(“diva”).show();
});
$(“#按钮2”)。单击(函数(){
$(“diva”).hide();
$(“divb”).show();
});
});
在JS中:

<script type="application/javascript">
   function myFunction() {
      var x = document.getElementById("myDIV");
      if (x.style.display === "none") {
         x.style.display = "block";
      } else {
         x.style.display = "none";
      }
   }
</script>

函数myFunction(){
var x=document.getElementById(“myDIV”);
如果(x.style.display==“无”){
x、 style.display=“block”;
}否则{
x、 style.display=“无”;
}
}

以下是一个如何实现这一目标的示例

var-toggleDivById=函数(id){
var div=document.getElementById(id);
if(div.classList.contains('active')){
返回div.classList.remove('active');
}
div.classList.add('active');
}
var handleToggleClick=函数(事件){
var targetId=event.target.dataset.target;
切换DivById(targetId);
}
document.querySelectorAll('.toggle')
.forEach(功能(切换){
toggle.addEventListener('click',handleToggleClick)
})
.toggable{
宽度:50px;
高度:50px;
背景颜色:深红色;
边框:2个实心番茄;
可见性:隐藏;
过渡:所有100毫秒的速度都会变慢;
边界半径:5px;
盒影:1px 1px 2px印度红;
}
.toggable.active{
可见性:可见
}
A
B

A.
B
你检查过这个可能的副本了吗?你试过什么吗?我试过几种方法。我从使用display隐藏我想要用css显示的元素开始:none;我还使用了:函数myFunction(){var x=document.getElementById(“myDIV”);if(x.style.display==“none”){x.style.display=“block”}else{x.style.display=“none”;}来打开它们。我让这部分工作,但我不明白的是如何使第一个关闭时,第二个点击,打开第二个。我可以发布一个链接到我正在处理的页面,对没有包含代码感到有点抱歉。我只是想说声谢谢!它工作得很好!这不完全是我想要做的,但离我足够近,我可以带着它跑!谢谢,谢谢!!!
$("selector").click(function(){
    $("divid").hide();
    $("divid").show();
})
 <script type="application/javascript">
    $(document).ready(function(){
      $("#button1").click(function(){
        $("diva").show();
      });
      $("#button2").click(function(){
        $("diva").hide();
        $("divb").show();

      });
    });
    </script>
<script type="application/javascript">
   function myFunction() {
      var x = document.getElementById("myDIV");
      if (x.style.display === "none") {
         x.style.display = "block";
      } else {
         x.style.display = "none";
      }
   }
</script>