jQuery 隐藏/显示

隐藏与显示是页面里最常用的效果,例如折叠面板、弹窗开关、详情展开。jQuery 提供了 hide()show()toggle() 三个方法,让元素在显示与隐藏之间平滑切换。

hide() 与 show()

hide() 隐藏选中的元素,show() 显示它,语法都是 $(选择器).hide(速度, 回调函数)

$('#box').hide();        // 立即隐藏
$('#box').show();        // 立即显示
$('#box').hide(1000);    // 1 秒内慢慢隐藏
$('#box').show('slow');  // 以"慢速"显示

速度参数可以传毫秒数(如 500),也可以传关键字 'slow''fast'

toggle() 一键切换

如果元素是隐藏的就显示、是显示的就隐藏,用 toggle() 最省事——适合做开关按钮:

$('#box').toggle();        // 在隐藏/显示之间切换
$('#box').toggle('fast');  // 带动画地切换

完整示例

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<!-- 引入 jQuery(https://example.com 为占位地址,实际使用时请替换为真实 CDN 或本地文件) -->
<script src="https://example.com/jquery.min.js"></script>
</head>
<body>
<button id="hide">隐藏</button>
<button id="show">显示</button>
<button id="toggle">切换</button>
<p id="box" style="background:#ffe08a;padding:10px;">你好,我是会被隐藏的段落</p>

<script>
$(function () {
    $('#hide').click(function () {
        $('#box').hide(800);      // 效果:段落 0.8 秒内收起
    });
    $('#show').click(function () {
        $('#box').show(800);      // 效果:段落 0.8 秒内展开
    });
    $('#toggle').click(function () {
        $('#box').toggle(400);    // 效果:来回切换,动画 0.4 秒
    });
});
</script>
</body>
</html>

工作原理

hide() 之所以能看到"慢慢收起"的动画,是因为 jQuery 同时修改了元素的高度、宽度与透明度,直到 display: none。隐藏后元素不占页面空间,与 visibility: hidden(仍占空间但不可见)不同,使用时注意区分。

小结

hide() / show() 控制显隐,toggle() 做一键切换,三者都能带速度参数产生平滑动画。这是 jQuery 效果家族的第一组,下一节看淡入淡出效果。

笔记加载中…