2011-02-10 7 views
25

jQuery에는 실제로 자동 확장 텍스트 영역 플러그인이 많이있는 것 같습니다. 내 autogrowing 텍스트 상자가 Facebook만큼 좋기를 바랍니다. 나는 현재의 라인에만 맞추기를 원하고 필요하기 전에 라인을 추가한다.jQuery에 가장 적합한 자동 확대 텍스트 영역 플러그인은 무엇입니까?

내가 검토 한 대부분의 플러그인은 문자의 수로부터 줄 높이를 추측하려고 시도하지만 너무 순진하게 보입니다. 높이를 계산하기 위해 숨겨진 div를 만드는 하나의 솔루션을 읽었습니다. 그것은 올바른 길과 같지만 그 해결책은 플러그인 형태가 아닙니다.

내가 원하는 것을하고 설치하기 쉬운 것은 무엇입니까?

답변

2

다음과 같이 계산하는 플러그인이 있습니다 : http://www.mostthingsweb.com/2012/01/textarea-line-count-version-1-3-released/. 그것은 숨겨진 div 접근 방식을 사용하고 심지어 올바른 글꼴 속성과 일치합니다. 그것을 확인해보십시오 :)

사용자가 텍스트 상자에서 키를 치면 그 때마다 플러그인을 호출 한 다음 적절하게 텍스트 상자의 크기를 조정할 수 있습니다. 어쩌면 다른 모든 키조차도 처리 능력을 높이고 싶지 않을 수 있습니다.

0

이봐이

function sz(t) { 
    dv = document.createElement("div"); 
    dv.style.visibility="hidden"; 
    dv.style.position="absolute"; 
    dv.style.width=t.offsetWidth; 
    dv.innerHTML = t.value.replace(/\n/g, "<br>"); 
    document.body.appendChild(dv); 
    t.style.height=(dv.offsetHeight+22)+"px"; 
    dv.parentNode.removeChild(dv); 
} 

는 다음 방금 = "SZ (이)"

+0

작동하지 않습니다! 게시하기 전에 텍스트를 입력하십시오. – Naor

+6

^게시하기 전에 내용을 읽으십시오. * 테스트 –

44

그것을 시도 onKeyUp에 사용하는 순수 자바 스크립트에게 있습니다. http://www.jacklmoore.com/autosize 나는 여기있는 것이 최고 다. 그것은 아주 좋은 것입니다.

+2

위대한 작품. 감사합니다 – DextrousDave

+0

IE8에서 나에게 잘 해줬습니다. – ClearCloud8

+0

잭 무어는 최고의 개발자 중 하나입니다 – machineaddict

관련 문제