如何获取文本的宽度。
var e=document.createElement('span');
e.style.fontSize = scope.fontsize;
e.innerHTML = "test";
console.log(e.offsetWidth);
宽度始终为0
答案 0 :(得分:2)
似乎您必须将创建的元素附加到document
。
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()
后,它可能无法显示。但添加position:absolute;
是一个好主意,因为这可以防止其他html内容的闪烁。
position:absolute;
margin-left:-1000em;