Javascript 每当打开新的div时隐藏div

Javascript 每当打开新的div时隐藏div,javascript,html,css,Javascript,Html,Css,我有一个网站,有两个选项,分别是标签、椅子和桌子。这是每当单击标记时显示div的HTML <div id="workbench_menu"> <p><strong>Living Room</strong></p> <a onclick="chairs()" href="#"><p>chairs</p></a>

我有一个网站,有两个选项,分别是标签、椅子和桌子。这是每当单击
标记时显示div的HTML

<div id="workbench_menu">
                <p><strong>Living Room</strong></p>
                <a onclick="chairs()" href="#"><p>chairs</p></a>
                <a onclick="tables()" href="#"><p>tables</p></a>
            </div>
            <div id="workbench_objects">

                <div id="tables" class="refresh" style="display:none;">
                    <div class="workbench_object_info">
                        <img src="images/house/objects/table_4.png">
                        <p>20 oak logs</p>
                    </div>
                </div>

                <div id="chairs" class="refresh" style="display:none;">
                    <div class="workbench_object_info">
                        <img src="images/house/objects/stonechair_1.png">
                        <p>20 oak logs</p>
                    </div>
                </div>

            </div>

getElementsByClassName('refresh')将返回元素数组

function tables() {
      hideElements();
      document.getElementById('tables').style.display='inline';
  }
  function chairs() {
      hideElements();
      document.getElementById('chairs').style.display='inline';
  }
  function hideElements(){
    var length = document.getElementsByClassName('refresh').length;
    for(var i=0; i<length;i++){
        document.getElementsByClassName('refresh')[i].style.display='none';
    }
  }
函数表(){
隐藏元素();
document.getElementById('tables').style.display='inline';
}
职能主席(){
隐藏元素();
document.getElementById('chairs').style.display='inline';
}
函数隐藏元素(){

var length=document.getElementsByClassName('refresh').length;
对于(var i=0;idocument.getElementsByClassName('refresh'))返回一个元素数组。所以你应该在返回的数组上迭代,并为每个元素设置display none。我应该像上面那样做吗?因为这没有区别,嗯,检查我的updateIt它仍然没有隐藏div元素,但是我有一个问题,你认为这是因为该div的所有内部div都需要一个
刷新
类t吗面向对象?
var length = document.getElementsByClassName('refresh').length;
                for(var i=0; i<length;i++){
                    document.getElementsByClassName('refresh')[i].style.display='none';
                }
                function tables() {
                    document.getElementById('tables').style.display='inline';
                }
                function chairs() {
                    document.getElementById('chairs').style.display='inline';
                }
function tables() {
      hideElements();
      document.getElementById('tables').style.display='inline';
  }
  function chairs() {
      hideElements();
      document.getElementById('chairs').style.display='inline';
  }
  function hideElements(){
    var length = document.getElementsByClassName('refresh').length;
    for(var i=0; i<length;i++){
        document.getElementsByClassName('refresh')[i].style.display='none';
    }
  }