我正在使用jquery动态更改div的内容 div的高度应根据新内容
更改/动画我发现一些在Chrome,Firefox和iPhone上完美运行的线条。 但是在IE中,内容会动画,但它会“开箱即用”。意思是...... div的高度没有改变
var $mydiv = $('#venues');
$mydiv.css('height', $mydiv.height());
$mydiv.html(TheDynamicContent);
if (!$mydiv.find("div.innerWrapper").length) { $mydiv.wrapInner('<div class="innerWrapper"/>'); }
$mydiv.animate({height: $('div:first',$mydiv).height()});
我已经搜索了很多试图寻找替代方案/修复程序,没有运气.. 该怎么办? ;)
更新:似乎 curvycorners 正在生成一个额外的div,只有IE才会敏感。所以这段代码实际上还可以。
答案 0 :(得分:0)
尝试指定延迟?
$mydiv.animate({height: $('div:first',$mydiv).height()}, 500);
答案 1 :(得分:0)
以下似乎适用于我(在IE10,9,8和7中测试)
$("#venues")
.css("height", function(){ return $(this).height(); })
.html("This is much longer text to force the element to grow.")
.wrapInner("<div/>")
.animate({
"height": $("div:first", "#venues").height()
}, 1000);
在线演示:http://jsbin.com/inudaz/2/edit
警告:您可能会在jsbin上遇到错误,建议$
未定义。如果是这种情况,只需下载示例(使用保存&gt;从jsbin中下载)并在本地运行。
解决方案:OP的项目正在利用jQuery插件修改关键区域的DOM,导致意外行为。禁用此插件解决了这个问题。