好的,所以我成功切换了 bool 和其他一些选项。
但是每当我为另一个按钮创建另一个单击功能以将 bool 切换为 false 时,它都不起作用。
我的代码:
let managementbool = false;
$("#management").on('click', function(){
managementbool = true;
if(managementbool)
{
$(".dot1").hide();
$(".dot2").hide();
$(".topbar").hide();
$(".boostingtext").hide();
$(".mainbar").hide();
$("#container").hide();
$(".dot11").show();
$(".dot22").show();
$(".topbar1").show();
$(".boostingtext1").show();
$(".mainbar1").show();
}
});
$("#contracts").click(function () {
managementbool = false;
$(".dot11").hide();
$(".dot22").hide();
$(".topbar1").hide();
$(".boostingtext1").hide();
$(".mainbar1").hide();
$(".dot1").show();
$(".dot2").show();
$(".topbar").show();
$(".boostingtext").show();
$(".mainbar").show();
$("#container").hide();
});
第一个将其切换为 true 的按钮有效,但是每当我单击将其设置为 false 的按钮时。什么都没发生。
答案 0 :(得分:1)
您没有正确添加函数。 $("#contracts").on('click', function() { ... });
应该可以工作。
还要看看您是否真的需要您的 managementbool
变量。当我点击 #management
时,您将其设置为 true
,从而始终执行 if 语句中的代码,从而使 if 语句变得多余。在您显示的代码段中,您似乎从未真正根据 managementbool
的值执行任何操作。
$("#show").on('click', function() {
$("#some_element").show();
});
$("#hide").on('click', function() {
$("#some_element").hide();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="show">Show</button>
<button id="hide">Hide</button>
<div id="some_element">Test</div>