2011-02-05 4 views
2

"Hello"라는 문자열이 있다고 가정 해 봅시다. 이 문자열은 분명히 길이가 5 자이지만, 길이는 픽셀 단위로 무엇입니까? JavaScript에서이 길이를 쉽게 결정할 수 있습니까? 나는 여분의 div가 사용자에게 표시되어야하는 솔루션을 생각해 왔지만,이 방법은 해킹되고 복잡해 보입니다.JavaScript로 문자열 길이를 픽셀 단위로 가져옵니다.

큰 그림에서 문자열의 길이를 채우기 위해 필요한 공백의 수를 확인하려고합니다. 위의 내용에서 알 수 있듯이, 가장 좋은 방법은 문자열의 길이와 단일 공백 ​​문자를 사용자 관점에서 측정하고이를 기반으로 텍스트를 대체 할 공백의 수를 계산하는 것입니다. 이것은 HTML 입력 텍스트에 표시 될 것입니다.

감사합니다.

+0

요소의 폭 (픽셀)을 원할 것입니다. 내용은 문자열 "Hello"입니다. 내가 맞습니까? –

+0

모노 스페이스 폰트를 사용하는 것이 좋을 것입니다. ;) http://en.wikipedia.org/wiki/Monospaced_font – JoeyRobichaud

+0

@JoeRobich 유니 코드가 1 문자 1 글리프 가정을 내 보냅니다 :-) –

답변

2

문자열의 컨테이너의 픽셀 수를 확인할 수 있습니다. DOM에서 숨겨진 요소를 만들고 내부 HTML을 문자열로 설정 한 다음 너비를 묻는 방법으로이 작업을 수행 할 수 있습니다.

+0

너는 너비를 어떻게 묻는가? 나는 lbl.style.width와 lbl.width를 시도했지만 그 값은 항상 정의되지 않았다. – Kingalione

+0

다음과 같은 것 : http://jsfiddle.net/dmhEC/1/ – rcravens

+0

이것은 나에게 좋은 대답처럼 보이지 않는다. 그것은 jQuery를 사용한다고 언급하고 실제로 대답을 포함하지는 않습니다. – NetMage

2

나는 컨테이너의 길이를 계산하는 것을 제외하고는 그것들을 훌륭하고 쉬운 방법으로 생각하지 않습니다. 너비는 글꼴 크기, 글꼴, 문자 간격에 따라 다르며 브라우저 등에 따라 달라집니다.

관련 문제