我有一个包含一些变量的 LESS 文件:
@font-size: 100%;
@label-align: left;
@field-width: 230px;
@icon-size: 16px;
@icon-padding: 8px;
在我的 JS 脚本中,我需要知道用户在 LESS 文件中设置的一些初始值的总和。计算出的 css 值可能会根据父容器大小而变化。这些值也会在首次加载时发生变化,具体取决于窗口大小。
有些元素也是动态创建的,因此很难在 JS 中获取正确的初始值,因为我必须在代码的不同点和不同的范围内声明变量。
我的一个想法是声明一个带有一些虚拟变量的“高范围”对象,并在我将元素附加到 DOM 后立即将值分配给变量,但结果却是混乱和多余的。
几个小时后,我想出了这个目前有效的想法,有点老套但有效。
较少的:
.less-vars {
width: @field-width + @error-width + @icon-size + (@icon-padding * 2);
}
JS:
var less_vars = $('<div class="less-vars" />').hide().appendTo('body').width();
$('.less-vars').remove();
我还有其他方法可以做到这一点吗?