javascript - 使用JS显示 "display: none"隐藏的div?

标签 javascript jquery html

下面的 HTML 和 JavaScript 按预期工作,但我想确保我正确使用它。

我有两个 div,但只需要显示一个,具体取决于 mode 的值。

HTML:

<body>
        <div id="a-div" style="display: none;">
            <button id="add" class="btnstyle">Add </button>
        </div>
        <div id="d-div" style="display: none;">
            <button id="delete" class="btnstyle">Delete</button>
        </div>
</body>

JS:

//$("#a-div").hide();
//$("#d-div").hide();

var mode = 'add';
//var mode = 'delete';
if (mode === 'add') {
    $("#a-div").show();
} else {
    $("#d-div").show();
}

这给了我预期的结果。有没有更好的方法来反转 style="display: none" 属性?

最佳答案

您当前的代码应该可以正常工作,但是有很多方法可以解决这个问题。我建议使用 jQuery toggle() :

$("#a-div").toggle(mode === "add");
$("#a-div").toggle(mode === "delete");

或者,您可以为它们提供 id 的 add-divdelete-div 并使其中之一可见,如下所示:

$("#" + mode + "-div").show();

关于javascript - 使用JS显示 "display: none"隐藏的div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32617226/

相关文章:

javascript - 检查网页是否完全加载

javascript - 将 JQuery 添加到文件后 Input-group-btn 未显示

javascript - Google Apps 脚本中的文件迭代器在搜索不存在的文件时返回无效参数

javascript - 如何在 CKEditor 4 中删除图像的 "height"设置

javascript - 在 Chrome 扩展中动态附加 SVG Sprite

javascript - 这些语句在 CSS(twitter-Bootstrap)中是什么意思?

javascript - 如何在站点加载后使输入字段聚焦?

javascript - 如何在使用javascript修改dom时只修改 "text"

在html中调用JQuery自定义函数?

html - CSS 中的伪类 hover