繁体   English   中英

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

[英]jQuery dynamic resize div after ajax call

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

$('#div').addClass('myclass');

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;
  }

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

谢谢

只需要这样做:
使用ajax加载要加载文本的div周围的限制div:

<div id="limit">
    <div id="div"> ajaxed load text </div>
</div>

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

#limit { position: relative; overflow: hidden; }

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

$("#limit").css({
    height: $("#div").height()
});

这是相同的,只是动画:

$("#limit").animate({
    height: $("#div").height()
},600);

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

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

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

#abc {
  min-height:10px;
  height:auto !important;
  height:10px;
}

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

此解决方案类似于上面的答案之一(sv_in)

我有一个id为abc的div,并且有一个css如下:

#abc{
height:575px;
}

我把它改成了以下,它有效!

#abc {
min-height: 575px;
height: auto;
}

UPD:我创建了一个基本的例子 ,我很确定在这个阶段我错了,所以如果你可以修改它并在这里发布一个链接,我将能够更有帮助=)

JS

var testData = "Test data, Test data, Test data, Test data, Test data, Test data, Test data, Test data, Test data";


$("#btn").click(function(){
  $("#sub").html(testData);
  $("#sub").css({height: 'auto'});
});**strong text**

HTML

<!DOCTYPE html>
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
<!--[if IE]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
  #main{
    border: 1px solid #f00;
    padding: 5px;
    width: 100px;
  }
  #sub{
    border: 1px solid #000;
    padding: 5px;
    height: 72px;
  }
</style>
</head>
<body>
  <div id="main">
    <div id="sub">
    </div>
  </div>
  <input type="button" id="btn" value="ajax event"/>
</body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM