Jquery/Javascript在li中隐藏/显示div

Jquery/Javascript在li中隐藏/显示div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我在一个页面上有很多div,比如下面的一个,使用相同的类,有不同的信息 <div class="one-third"> <ul class="img-list"> <a href="#" target="_blank"> <li> <img src="#" alt="" /> <span class="text-cont

我在一个页面上有很多div,比如下面的一个,使用相同的类,有不同的信息

<div class="one-third">
    <ul class="img-list">
        <a href="#" target="_blank">
            <li>
                <img src="#" alt="" />
                <span class="text-content"><h3 style="color:white" id="one">BRIAN FARGO</h3></span>
                <h5 class="text-content-desc" id="two">CEO, inXile entertainment</h5>
                <a href="https://twitter.com/BrianFargo">
                <img class="speaker-twitter-profile" src="#"></a>
                <div class="info-btn" onClick="swap('one','two')">info</div>
            </li>
        </a>
    </ul>
</div>
问题是,当我单击info按钮时,它会影响所有div,但我需要它只影响单击哪个按钮的div


就像我点击BRIAN FARGO的信息,它应该只显示/隐藏/影响BRIAN FARGO的简历。不是所有其他扬声器。

我不明白为什么您的函数名为swap,因为它所做的只是将一个元素的display属性更改为block,而默认情况下它已经是block,并将另一个元素的display更改为none,从而有效地隐藏它


如果您有许多具有相同id的div,这也可能是您的问题。每个元素的Id都应该是唯一的

你知道Id必须是唯一的,对吗?我认为你需要检查你的交换函数,确保它只针对兄弟姐妹等,你有没有可能在这里包含它?使用无效的标记,不能是你的直接子项,也不能是你想要使用和选项卡组件的子项?像这样->同样,正如blex所说,你不能让同一个id在同一个页面上重复多次。是的,我放了不同的id。传递那个id是我的职责。它起作用了。谢谢你!
function swap(one, two) {
    document.getElementById(one).style.display = 'block';
    document.getElementById(two).style.display = 'none';
}