UNPKG

637 BJavaScriptView Raw
1
2// 计算文字长度
3
4export function textWidth(text, flag) {
5 if (!flag) { this.__helpDOM.innerText = text; }
6 return this.__helpDOM.offsetWidth;
7};
8
9// 计算最佳光标左边位置
10
11export function bestLeftNum(x) {
12
13 let text = this._contentArray[this.__lineNum];
14
15 if (x <= 40) return 0;
16 if (x - 40 >= this.$$textWidth(text)) return text.length;
17
18 let dist = x - 40, i = 1;
19
20 for (; i < text.length; i++) {
21
22 let tempDist = Math.abs(x - 40 - this.$$textWidth(text.substr(0, i)));
23
24 if (tempDist > dist) break;
25
26 dist = tempDist;
27
28 }
29
30 return i - 1;
31};
\No newline at end of file