ajax调用后jQuery动态调整大小div

Pan*_*ack 18 javascript css jquery

我正在尝试扩展div以适应文本,而不必指定确切的hegiht.我试过用类似的东西.

$('#div').addClass('myclass');
Run Code Online (Sandbox Code Playgroud)

myclass的高度为:auto; 但那不行.我不知道如何让它从一个返回文本的ajax调用中相应地扩展div.

这是主要的css类

.pro_input{ 
    border-top:2px solid #919191;
    border-left:1px solid #CBCBCB;
    border-right:1px solid #CBCBCB;
    border-bottom:1px solid #CBCBCB;
    width:530px;
    background-color:#F2F2F2;
    height:72px;    
 }
 .pro_attach{
     height:auto;
  }
Run Code Online (Sandbox Code Playgroud)

我只是想在ajax响应之后使高度自动化.文字可以是一点点或很多.所以我需要它相应扩展.我使用addclass来改变其他东西但是将它与jQuery addclass与pro_attach一起使用不起作用.

谢谢

Tho*_*mas 20

只需要这样做:
在你想要用ajax加载文本的div周围包装一个限制div:

<div id="limit">
    <div id="div"> ajaxed load text </div>
</div>
Run Code Online (Sandbox Code Playgroud)

给#limit div一个隐藏的溢出:

#limit { position: relative; overflow: hidden; }
Run Code Online (Sandbox Code Playgroud)

最后,在使用ajax加载文本后,始终将#limit高度调整到#div的高度:

$("#limit").css({
    height: $("#div").height()
});
Run Code Online (Sandbox Code Playgroud)

这是相同的,只是动画:

$("#limit").animate({
    height: $("#div").height()
},600);
Run Code Online (Sandbox Code Playgroud)

该脚本检查#div的高度并将其提供给#limit,这就是诀窍.


sv_*_*_in 12

假设:最初,div中没有​​内容.稍后,文本将添加到div中.

假设div的id是'abc',而div中没有​​内容的高度是10px.然后我想给的风格是:

#abc {
  min-height:10px;
  height:auto !important;
  height:10px;
}
Run Code Online (Sandbox Code Playgroud)

资料来源:http://www.dustindiaz.com/min-height-fast-hack/

  • 高度:自动!重要;作品! (2认同)
  • 高度:自动!重要:对我有用!谢谢! (2认同)