javascript - 是否有一个javascript来检查另一个脚本是否已被激活?

标签 javascript html menu navigation sidebar

我一直在使用 HTML 和 Javascript 为网站构建一个弹出菜单,并且我已经设法获得一个按钮来创建一个弹出 div 容器,其中有一个按钮可以将其关闭。最终将会有更多的按钮和各种各样的东西,但我现在保持简单。我想说的是,Javascript 不是我的强项。我现在遇到的问题是,我已经让所有按钮正常工作并隐藏了 div,虽然当我按下“关闭”按钮时 div 消失了,但其中的元素却没有消失。我希望我可以制作一个 if else 脚本,当激活“菜单”按钮(导致弹出 div 出现)时,该脚本将隐藏或删除弹出 div 中的元素。为了开始弄清楚这一点,我需要一个脚本来检测按下菜单按钮时运行的脚本是否处于事件状态。如果我解释得不好,我很抱歉,但相关代码粘贴在下面,希望这会有所帮助。是否有一个脚本可以检测另一个脚本是否正在运行,然后可以激活 if else 脚本?作为奖励,有人对可以有条件隐藏(或删除)元素的脚本有任何想法吗?两者在一起会很可爱:)

代码如下: HTMLJavascript-

<div>
    <script>
        function sidebar() {
            x = document.getElementById("sbb")
            x.style.width = "0";
            x.style.position = "relative";
            x = document.getElementById("sba")
            x.style.width = "200px";
            x.style.top = "0px";
            x.style.bottom = "0px";
            x.style.position = "absolute";
        }
    </script>
    <script>
        function closesb() {
            x = document.getElementById("sba")
            x.style.width = "0";
            x.style.position = "relative";
        }
    </script>
    <div style="width:100%; height:100; z-index:3">
        <button type="button" onclick="sidebar()">MENU</button>
    </div>
    <div class="sidebar">
        <div class="sba" id="sba">
            <button type="button" onclick="closesb()">CLOSE</button>yellow</div>
        <div class="sbb" id="sbb">yellow</div>
    </div>
</div>

CSS-

.sidebar{
    position: absolute;
    z-index: 2;
    margin: 0;
    padding: 0;
    border: 0;
}
.sba{
    width:200px;
    top:0px;
    bottom:0px;
    background-color:#787878;
    opacity:.75;
    position:absolute;
    height:10em;
}
.sbb{
    top:0px;
    bottom:0px;
    right:0px;
    width:100%;
    margin-left:200px;
    height:100%;
    position:absolute;
}

注意:

1-div“sba”和“sbb”中的“黄色”一词只是为了确定div在页面上的位置,因为弹出菜单是分层完成的。 2- 按钮脚本是页面和整个网站上运行的唯一脚本。 3- 我只对 Javascript 和 HTML 中的答案感兴趣,并且这些答案适用于所有浏览器或几乎所有浏览器,现在请。

最佳答案

http://jsfiddle.net/jpEqt/1/

function sidebar() {
        x = document.getElementById("sba")
        x.style.display = "block";
    }

function closesb() {
        x = document.getElementById("sba");
        x.style.display = "none";
    }

<div class="sba" id="sba" style="display:none">

关于javascript - 是否有一个javascript来检查另一个脚本是否已被激活?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18565770/

相关文章:

java - 我有一个菜单代码,例如游戏菜单,但单击按钮时不会转到页面

javascript - 在 JavaScript 中将数字转换为百分比的最简单方法是什么?

javascript - 带有嵌套 React 组件的 onMouse 事件

jQuery 水平滚动隐藏,可能只有 css?

javascript - 需要设置 Click & drag column headers 的最小宽度

javascript - Accordion 关闭动画不起作用。它打开(有动画)和关闭(没有动画)

menu - 返回菜单语言 GO

javascript - "a = a || []"是什么意思?

javascript - 谜团 "TypeError: navWrap.offset() is undefined"

html - 将鼠标悬停在链接底部之前,链接不可点击