Jquery CSS 高度切换

标签 jquery css toggle conditional-statements

我正在使用此代码通过更改其高度来显示/隐藏一个 div:

$("#about").click(function(){
    if ($('#descrition').css('height') === '280px') {
        $("#description").css("height","0px");
    } else {
        $("#description").css("height","280px");
    }  
});

它可以展开 div,但当我再次单击以隐藏它时却不起作用。有什么想法吗?

PS:高度的变化很重要,因为我使用 css 过渡动画 div,所以显示变化不是一个选项。

最佳答案

这将解决您的问题并加快代码速度,删除重复的 jQuery 解析...

$("#about").click(function() {
    var $description = $("#description");
    if ($description.height() === 280) {
        $description.height(0);
    } else {
        $description.height(280);
    }
});

正如 putvande 所指出的,在尝试获取高度时出现了错字。上面还将jQuery对象存储为局部变量,而不是重复解析DOM。

关于Jquery CSS 高度切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17947080/

相关文章:

javascript - jQuery : Want to disable all the input fields if editqastatus value = 1 or 2

javascript - 通过 CSS 和 javascript 绘制树和动态设计(模式)

html - 一次只有一个背景过滤器工作

javascript - 导航栏(下拉菜单)无法正常工作?

jQuery toggle() 并且只复制可见文本而不使用 remove()

Javascript:切换类添加或删除

javascript - 获取 CKEditor 内容? -jQuery

javascript - 如何使用jquery获取li中的值

jquery - 遍历父 div 并使用匹配隐藏子类

javascript - 在 div 中点击切换动画