Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用HTML和Jquery根据文本固定textarea高度_Jquery_Html_Css - Fatal编程技术网

如何使用HTML和Jquery根据文本固定textarea高度

如何使用HTML和Jquery根据文本固定textarea高度,jquery,html,css,Jquery,Html,Css,我需要一个人帮忙。我需要根据里面写的内容来确定文本区域的高度。我在下面解释我的代码 <html> <head> <link rel="stylesheet" href="lib/style.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="

我需要一个人帮忙。我需要根据里面写的内容来确定文本区域的高度。我在下面解释我的代码

<html>
  <head>
    <link rel="stylesheet" href="lib/style.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="lib/script.js"></script>
  </head>

  <body>
    <h1>Hello</h1>
    <textarea id="textarea-container">
    Line 1
    Line 2
    Line 3
    Line 4
    ccccccccccccccccccccc
</textarea>
<script>
  var $textArea = $("#textarea-container");

// Re-size to fit initial content.
resizeTextArea($textArea);

// Remove this binding if you don't want to re-size on typing.
$textArea.off("keyup.textarea").on("keyup.textarea", function() {
    resizeTextArea($(this));
});

function resizeTextArea($element) {
    $element.height($element[0].scrollHeight);
}
</script>
  </body>
</html>

你好
第1行
第2行
第3行
第4行
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
var$textArea=$(“#textArea容器”);
//重新调整大小以适合初始内容。
resizeTextArea($textArea);
//如果不想在键入时重新调整大小,请删除此绑定。
$textArea.off(“keyup.textArea”).on(“keyup.textArea”,function()){
resizeTextArea($(此));
});
函数resizeTextArea($element){
$element.height($element[0].scrollHeight);
}

此处,文本区域及其滚动中存在一些文本。在这里,我需要文本区域的高度将根据其内部的内容进行扩展,但不会超过该高度,并且不会滚动。

我创建了一个简化的示例。它获取
textarea
元素的
scrollHeight
属性,并根据该属性设置内部高度
overflow-y:hidden
很重要,因为否则
scrollHeight
属性将与垂直滚动条一起计算

//加载页面后设置高度
调整textarea高度($(“#textarea容器”);
//附加按键关闭事件
$(“#textarea container”)。在('keydown',调整textareaheight)上;
功能调整文本区域高度(ta){
如果(!ta.长度){
ta=$(本);
}
//获取文本区域元素的完整滚动高度
var scrollHeight=ta.prop('scrollHeight');
//有些浏览器不收缩元素,所以我们首先将高度设置为0
ta.内部高度(0)
.内部高度(滚动高度);
}
#文本区域容器{
溢出y:隐藏;
}

你好
第1行
第2行
第3行
第4行
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
如果上面的链接正好显示了您想要的内容。这里是完整代码的链接。谢谢