0

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

$("#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'})  
            } 
    ); 

非常感谢。

4

2 回答 2

2

一个简单的方法是为关闭和打开的 div 定义一个类,并将响应 css 分配给开放类 div。然后onclick你可以使用jQuery通过这样的命令来改变div的类

$("#contactArea").attr('class', 'newClass');
于 2012-09-01T21:48:28.410 回答
1

首先,是的,你可以!

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

$("#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)因为后者已被弃用。

小提琴

于 2012-09-01T22:25:57.300 回答