Javascript 在IE8中复制粘贴时自动增长文本区域

Javascript 在IE8中复制粘贴时自动增长文本区域,javascript,jquery,Javascript,Jquery,我正在尝试为键盘上的文本区域编写自动增长功能。它在firefox和IE8中都能很好地工作,但当尝试复制粘贴一个有大量空白的数据时,它不会相应地增长。令人惊讶的是,我使用的是滚动高度而不是字符数。下面是我的代码 $("textarea").keyup(function(){ if(navigator.userAgent.indexOf("Firefox") > 0){ $(this).css('height', 'auto' ); } var elementHeight = 16;

我正在尝试为键盘上的文本区域编写自动增长功能。它在firefox和IE8中都能很好地工作,但当尝试复制粘贴一个有大量空白的数据时,它不会相应地增长。令人惊讶的是,我使用的是滚动高度而不是字符数。下面是我的代码

$("textarea").keyup(function(){ 
if(navigator.userAgent.indexOf("Firefox") > 0){
    $(this).css('height', 'auto' );
}
var elementHeight = 16;

$(this).css('overflow','scroll');
$(this).parent().css('overflow','scroll');
var height = $(this).prop('scrollHeight');
if(height >= elementHeight){
       $(this).css('height',height+'px');
}
var parentHeight = height + 10;
if($(this).attr('id')=='evidenceDetails'){
    parentHeight = parentHeight + 70;
}
$(this).parent().css('height',parentHeight+'px');

$(this).css('overflow','hidden'); 
$(this).parent().css('overflow','hidden');
}); 

非常感谢您的帮助。

一开始,您正在测试Firefox并使用测试结果,但没有针对IE的等效测试(也没有默认测试)。在测试过程中,我们发现,当我们从文本区域删除所有数据时,Firefox中的高度并没有降低。这就是支票。由于不需要额外的代码,所以没有对ie进行同等的测试。提供延迟是可行的。虽然我不明白为什么。任何意见。我不能保证这与您的具体情况有关,但以下是一些关于有时可能需要延迟的内容: