2010-08-04 59 views
2

有誰知道最好的方法是計算出使用JavaScript的HTML中的DIV塊內能放入多少個字符?找出有多少個字符可以放進DIV的JavaScript

任何意見將大大幫助。

+1

是否DIV有預定義的寬度是多少? – Sarfraz 2010-08-04 08:26:52

+0

你想限制沒有。的字符進入DIV,或者如果內容超過DIV可以採用的內容,您想檢查並標記一條消息給用戶? – 2010-08-04 08:46:53

+0

如果你想截斷一個字符串以適應div,你應該看看更好的選擇 - 比如IE6 +和大多數現代瀏覽器支持的CSS3屬性* text-overflow *。請參閱[我的答案*追加「...」當字符串比所需更大*更多信息](http://stackoverflow.com/questions/3247011/append-when-a-string-is-larger-than -desired/3247062#3247062) – 2010-08-04 08:56:33

回答

2

你可以反覆添加你的角色到一個隱藏的div並檢查它的寬度。不知道是否有更好的方法。

編輯:事情是這樣的:

var targetWidth = document.getElementById('DivToCheck').clientWidth; 
var stringToFit = 'abcdefghijk'; 
var numChars = 0; 
for(var i=0; i < stringToFit.length; i++) 
{ 
    document.getElementById('hiddenDiv').innerHTML += stringToFit.charAt(i); 
    if (document.getElementById('hiddenDiv').clientWidth > targetWidth) 
    { 
     numChars = i - 1; 
     break; 
    } 
} 

<div id="hiddenDiv" style="visibility: hidden; width: auto;"></div> 
+1

請注意以下幾點:1.隱藏div會影響頁面的佈局,所以應該有*位置:絕對; *和,2.隱藏div需要匹配字體要檢查的div的樣式(例如* font-family *,* font-size *,* font-weight *等)。 – 2010-08-04 08:52:04

相關問題