使用大量文本区域时,我的加载时间很长。
<?php
foreach($hold as $value){
$card_key = $value['card_key'];
$card_one = $value['card_one'];
$card_two = $value['card_two'];
$card_three = $value['card_three'];
echo '<li class="row_'.$card_key.'" value="'.$card_key.'">
<p>'.$i.'.</p>
<button type="button" value="'.$card_key.'" tabindex="-1"></button>
<div class="edit_one">
<textarea class="text1" maxlength="1000">'.$card_one.'</textarea>
</div>
<div class="edit_two">
<textarea class="text2" maxlength="1000">'.$card_two.'</textarea>
<textarea class="text3" maxlength="1000">'.$card_three .'</textarea>
</div>
<div style="clear:both;"></div>';
echo '</li>';
$i++;
}
?>
<script type="text/javascript" src="../../scripts/jquery.elastic.source.js"></script>
<script type="text/javascript">
$('.edit_main textarea').elastic();
</script>
当$hold包含 1-10 时,加载不需要那么长时间,但是当它有 50 个左右时,加载需要 8+ 秒。
有没有更快的方法来加载多个文本区域?我是否应该使用 AJAX 一次加载一个,使其看起来无缝?
找到一个可能解决您问题的好答案。
取出松紧带并用这个代替它。当存在许多文本区域时,Elastic 可能会导致某些浏览器中加载时间变慢。
function textarea_resize(e){
$(e).css({'height':'auto'}).height(e.scrollHeight);
}
$('textarea').each(function(){
textarea_resize(this);
}).on('input', function(){
textarea_resize(this);
});
创建具有自动调整大小功能的文本区域