# 原理
请求获取数据后,遍历数据,动态渲染一个节点,获取节点的宽度,最后改变表格列宽度
# 核心代码
代码语言:javascript复制/**
* 计算字符串宽度
* @param str
* @returns {number}
*/
function getStrWidth (str) {
if (!document.getElementById('str-width')) {
document.getElementsByTagName('body')[0].insertAdjacentHTML('beforeend', '<span id="str-width"></span>')
}
document.getElementById('str-width').innerText = str
return Math.ceil(document.getElementById('str-width').getBoundingClientRect().width) 20 // 多加 20px 是为了容错
}
1 2 3 4 5 6 7 8 9 10 11 12
代码语言:javascript复制#str-width {
position: fixed;
opacity: 0;
top: 0;
left: 0;
}
1 2 3 4 5 6