텍스트 영역에 텍스트를 입력 할 때 영역보다 넓어지면 텍스트가 다음 줄로 줄 바꿈됩니다. 이 일이 언제 프로그램 방식으로 결정할 수 있습니까? 포장이 발생하면라인이 텍스트 영역에 자동으로 줄 바꿈되는 것을 어떻게 감지 할 수 있습니까?
답변
해고 실제 이벤트가 없습니다,하지만 당신은 텍스트 영역의 폭을 알고 있다면 당신은 해결책을 해킹 할 수 있습니다.
텍스트 영역에있는 변경 이벤트를 수신하고 컨텐츠의에 랩 사업부에 텍스트를 전송;
.textwidth {
position: absolute;
visibility: hidden;
height: auto;
width: auto;
}
는 텍스트 내용과 DIV의 폭을 계산하고 텍스트 영역의 일정한 폭에 그 비교 : 스타일
<div class="textwidth"></div>
여기
$('textarea').on('keyup', function() {
var lastLine = $(this).val().split('/n').pop();
var width = $('.textwidth').text(lastLine).width();
if (width > $('textarea').width()) {
// fire wrap event
}
});
는 약간의 몇 가지 아이디어를 줄 것이다 겉만 번지르르 한 바이올린은 어떻게 계속 : http://jsfiddle.net/cXbAh/1/
이것이 효과가있는 것처럼 보입니다. 그러나 두 글꼴은 정확히 동일해야합니다. 그렇지 않으면 잘못 인쇄되어야합니다. –
@ChristopherCortez Monospace를 사용하면 훨씬 쉽게 사용할 수 있습니다! – Jivings
실제로. 저는 귀하의 코드를 기초로보다 견고한 솔루션을 제시하려고 노력했지만, 이제는 브라우저 간 신뢰성이 떨어지는 것으로 나타났습니다 (놀라운 것은 아님). –
는 CA n "숨겨진"범위를 사용하여 모든 선 너비를 측정합니다.
라인 폭이 그런 다음 scrollHeight 변경 바닥을 통해 갈 경우, 행이
function textWidth(txt, font, padding) {
$span = $('<span></span>');
$span.css({
font:font,
position:'absolute',
top: -1000,
left:-1000,
padding:padding
}).text(txt);
$span.appendTo('body');
return $span.width();
}
Firefox 42에서 제대로 작동하지 않는 것 같습니다. – fffred
- 1. 개체가 처리되는 것을 어떻게 감지 할 수 있습니까?
- 2. QTextEdit에서 사용자가 텍스트 영역에 커서를 한 번만 삽입하면 어떻게 감지 할 수 있습니까?
- 3. '너비'는 텍스트 영역에 적용 할 수 있습니까?
- 4. 이미지를 텍스트 영역에 추가 할 수 있습니까? 그렇다면 어떻게?
- 5. ScrollView가 스크롤하는 것을 어떻게 감지 할 수 있습니까?
- 6. 보존 줄 바꿈은 텍스트 영역에
- 7. 텍스트 영역에 페이지 줄 표시
- 8. jQuery없이 HTML 텍스트 영역에 표시되는 줄 수 (줄 바꿈이 아닌)?
- 9. WPF에서 Flowdirection RightToLeft 또는 LeftToRight를 자동으로 감지 할 수 있습니까
- 10. 단어가 줄 바꿈되는 위치를 감지하는 방법
- 11. 보기가 tabBarController.moreNavigationController에서로드되었음을 어떻게 감지 할 수 있습니까?
- 12. 어떻게 텍스트 상자 필드 빈 공간을 감지 할 수 있습니까?
- 13. 줄 바꿈이 텍스트 영역에 \ r \ n으로 표시됩니다.
- 14. 활동이 시작되었음을 어떻게 감지 할 수 있습니까?
- 15. 어떻게 자동으로 터미널을 제어 할 수 있습니까?
- 16. 스마트 장치를 어떻게 감지 할 수 있습니까?
- 17. 어떻게 부분 주위에 텍스트 줄 바꿈을 할 수 있습니까?
- 18. 알림 취소를 어떻게 감지 할 수 있습니까?
- 19. 프로세스 시작을 어떻게 감지 할 수 있습니까?
- 20. 어떻게 충돌의 측면을 감지 할 수 있습니까?
- 21. 화면 회전을 어떻게 감지 할 수 있습니까?
- 22. 어떻게 이미지를 클릭했는지 감지 할 수 있습니까?
- 23. Web UI가 IOS UIWebView에서 열리는 것을 감지 할 수 있습니까?
- 24. 텍스트 영역에 단어 줄 바꿈 표시
- 25. 텍스트 영역에 enterkey에서 줄 바꿈을 만드는 방법
- 26. JavaScript가 열린 창 위치가 바뀌는 것을 감지 할 수 있습니까?
- 27. LWUIT 텍스트 영역에 html CSS를 적용 할 수 있습니까?
- 28. 사용자가 값을 입력하지 않으면 어떻게 자동으로 기본값을 텍스트 영역에 삽입합니까?
- 29. 어떻게 자동으로 줄 바꿈
- 30. 어떻게 텍스트 영역에 문자열을 추가 할 수 있습니다 - 자바
을 감싸 텍스트 영역의 폭보다 더 큰,하지만 난 그냥 그 자체가 아무것도하지 포장 생각하지 않는 경우 . 나는 틀렸어. – dandavis
생각 나는 ['Range.getBoundingClientRect'] (https://developer.mozilla.org/en-US/docs/DOM/element.getBoundingClientRect)를 사용할 수 있었기 때문에 실제 예제를 만들 수 없었습니다. '