84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
간단한 자동 확장 텍스트 영역을 만들려고 합니다. 내 코드는 다음과 같습니다.
하지만 입력할 때마다 텍스트 영역이 무한히 커집니다...
이를 위한 Dojo 및 jQuery 플러그인이 있다는 것을 알고 있지만 사용하고 싶지 않습니다. 나는 그들의 구현을 보고 원래 scrollHeight를 사용했지만 동일한 작업을 수행했습니다.
scrollHeight
답변을 시작하고 텍스트 영역을 사용하여 답변을 재생할 수 있습니다.
자동 확장 영역을 행 수(예: 5행)로 제한하고 싶습니다. Rob의 솔루션을 위해 "em" 단위를 사용하는 것을 고려했지만 이는 오류가 발생하기 쉬우며 패딩과 같은 사항을 고려하지 않습니다.
내 생각은 이렇다:
바이올린: http://jsfiddle.net/cgSj3/
사용 중scrollHeight正确扩展/收缩文本区域之前重置高度。 Math.min()을 사용하여 텍스트 영역의 높이 제한을 설정할 수 있습니다.
Math.min()
코드:
바이올린: http://jsfiddle.net/gjqWy/155
참고: IE8 및 이전 버전에서는 input 이벤트가 지원되지 않습니다 input 事件IE8 及更早版本不支持 。如果您也想支持这个古老的浏览器,请使用 keydown 或 keyup 以及 onpaste 和/或 oncut. 이 고대 브라우저도 지원하려면 keydown 또는 keyup과 onpaste 및/또는 oncut을 사용하세요.
input
keydown
keyup
onpaste
oncut
자동 확장 영역을 행 수(예: 5행)로 제한하고 싶습니다. Rob의 솔루션을 위해 "em" 단위를 사용하는 것을 고려했지만 이는 오류가 발생하기 쉬우며 패딩과 같은 사항을 고려하지 않습니다.
내 생각은 이렇다:
으아악바이올린: http://jsfiddle.net/cgSj3/
사용 중
scrollHeight
正确扩展/收缩文本区域之前重置高度。Math.min()
을 사용하여 텍스트 영역의 높이 제한을 설정할 수 있습니다.코드:
으아아아바이올린: http://jsfiddle.net/gjqWy/155
참고: IE8 및 이전 버전에서는
input
이벤트가 지원되지 않습니다input
事件IE8 及更早版本不支持 。如果您也想支持这个古老的浏览器,请使用keydown
或keyup
以及onpaste
和/或oncut
. 이 고대 브라우저도 지원하려면keydown
또는keyup
과onpaste
및/또는oncut
을 사용하세요.