今天遇到了獲取文字寬度的問題,查了很久,終於在一個國外網站上找到了方法,但是不能直接使用,於是修改了一下,成功使用到了專案中,在這裡分享給大家。
首先在body標籤最後新增一個子標籤:
複製程式碼 程式碼如下:
test
然後新增相應的css程式碼:
複製程式碼 程式碼如下:
#ruler {
visibility: hidden;
white-space: nowrap;
font-size: 24px;
}
接下來直接在String的原型中新增獲取文字寬度的函式,在js程式碼中加入以下程式碼即可:
複製程式碼 程式碼如下:
alLength = function()
{
var ruler = $("#ruler");
(this);
return ruler[0]etWidth;
}
最後在需要獲取文字寬度的地方呼叫即可,舉個例子:
複製程式碼 程式碼如下:
var text = "test";
var len = alLength();
主要思路是新增一個隱藏的標籤,每次對該標籤賦值後,通過獲取該標籤的.長度來獲取文字寬度。需要注意的是,只有已經被新增到DOM中的標籤才能獲取長度。
如果大家覺得對自己有幫助的話,還希望能幫頂一下,謝謝:)