如何使用javascript计算文本的宽度?
如何获得文本的宽度如何使用javascript计算文本的宽度?,javascript,angularjs,Javascript,Angularjs,如何获得文本的宽度 var e=document.createElement('span'); e.style.fontSize = scope.fontsize; e.innerHTML = "test"; console.log(e.offsetWidth); 宽度始终为0似乎必须将创建的元素附加到文档中 var e=document.createElement('span'); document.body.appendChild
var e=document.createElement('span');
e.style.fontSize = scope.fontsize;
e.innerHTML = "test";
console.log(e.offsetWidth);
宽度始终为0似乎必须将创建的元素附加到
文档中
var e=document.createElement('span');
document.body.appendChild(e);
e.style.fontSize = 14;
e.innerHTML = "test";
console.log(e.offsetWidth);
e.remove();
产出:23
隐藏元素不起作用
e.style.display= "none";
输出:0
要“隐藏它”,您可以添加这样的CSS。但是添加了remove()
之后,它可能无论如何都不会显示。但增加位置:绝对
是一个好主意,因为这将防止其余html内容闪烁
position:absolute;
margin-left:-1000em;
如果您只需要宽度并想真正显示它,您还可以添加一个css类来隐藏它。似乎只有在实际显示元素时才计算宽度。它在末尾创建空白的span标记。我们不能在末尾删除thosee.remove()吗