javascript - 使用 javascript 切换主 div 内其他 div 的显示

标签 javascript

单击按钮应切换相应按钮的 div 的可见性。第一张图片是代码从一开始就应该是什么样子,第二张图片显示了单击提交按钮 1 后代码应该是什么样子。

this is what the div should initially look like This is what the div should look like after clicking the 1st submit button

.toggleDiv{
    background: gray;
    max-width: 400px;
}
<!DOCTYPE html>
<html>
<script src="script.js"></script>
<link rel="stylesheet" href="styles.css">
<body>
    <div class="toggleNav">
        <div class="Button1">
           <input onclick="toggleMain" type="image" src="images/vinylBtn.png">
            <a href="#">Button1</a>
        </div>
        <div class="Button2">
            <input onclick="toggleMain" type="image" src="images/cdBtn.png">
            <a href="#">Button2</a>
        </div>
        <div class="Button3">
            <input onclick="toggleMain" type="image" src="images/tapeBtn.png">
            <a href="#">Button3</a>
        </div>
    </div>
    <div class="toggleDiv">
        <div id="mainText">
            <h2>main div</h2>
            <p>This is where the different divs shouls be toggling
        </div>
        <div id="Button1">
            <p>This is the first div</p>
        </div>
        <div id="Button2">
            <p>This is the second div</p>
        </div>
        <div id="Button3">
            <p>This is the third div</p>
        </div>
    </div>
</body>
</html>

最佳答案

您可以通过toggleNav中的标签a找到所有元素,然后添加事件监听器。请参阅我在 Playground 上的示例 https://jsfiddle.net/denisstukalov/ompaeL0d/29/ :

const links = document.querySelectorAll("div.toggleNav div a");
for (var i = 0; i < links.length ; i++) {
    const divId = links[i].innerText
    links[i].addEventListener("click", 
    function (event) {
        event.preventDefault();
        document.getElementById(divId).style.display = 'block';
    }, 
    false);
}

关于javascript - 使用 javascript 切换主 div 内其他 div 的显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61468185/

相关文章:

javascript - d3.js onclick 和 touch 在 topojson map 上工作不稳定

javascript - 用户离开页面时发生的事件

javascript - 如何将文本框值从一页传递到另一页?

javascript - 我无法使用 Angular2 从 JSONP 响应中获取正文数据,但它可以通过使用 ajax 来工作

javascript - 基于倾向性的流体响应图像网格

javascript - jQuery Mobile 为一项功能提供更多按钮

javascript - Php 和 javascript 阅读问题

javascript - 在运行时加载 knockout.js 库

javascript - 使用 jQuery 进行表单验证(无需validation.js)

javascript - css dom 操作 Angular 组件到 html-css