首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery从CSS获取高度还是动态切换?

jQuery从CSS获取高度还是动态切换?
EN

Stack Overflow用户
提问于 2012-09-02 05:40:37
回答 2查看 784关注 0票数 0

我有以下代码,但我正在建设一个响应式网站,所以高度需要是动态的内容。它被设置为0,所以div显示为闭合,然后单击它需要设置高度。我可以在CSS中设置它(对媒体查询使用不同的高度)并将其拉入吗?

代码语言:javascript
运行
复制
$("#contactArea").css('height', '0px');

$("a.contact").toggle( 
            function () { 
                $("#contactArea").animate({height: "180px"}, {queue:false, duration: 800, easing: 'easeOutBack'}) 
            }, 
            function () { 
                $("#contactArea").animate({height: "0px"}, {queue:false, duration: 800, easing: 'easeOutBack'})  
            } 
    ); 

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-02 05:48:28

一种简单的方法是为关闭和打开的div定义一个类,并将响应式css分配给打开的类div。然后单击,您可以使用jQuery通过如下命令更改div的类

代码语言:javascript
运行
复制
$("#contactArea").attr('class', 'newClass');
票数 2
EN

Stack Overflow用户

发布于 2012-09-02 06:25:57

首先,是的,你可以!

要将高度动画化为设置的CSS高度,请使用“切换”选项:

代码语言:javascript
运行
复制
$("#contactArea").animate({height: 'toggle'},0);

$("a.contact").on('click', function(e) {
    e.preventDefault();
    $("#contactArea").animate({height: "toggle"}, {queue:false, duration: 800, easing: 'easeOutBack'})     
}); ​

其次,使用click()而不是toggle(with two functions),因为后者已被弃用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12231635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档