使用javascript计算的值更少

时间:2012-05-29 06:22:17

标签: javascript css less

在LESS中,我使用以下代码来获取窗口的高度。

@winheight:`$(window).height()`

我得到的是一个数字,但是当我添加px来获得该单位时,

height: @winheight px;

它将编译为height: 910 px

我也尝试过javascript评估后的单元。但我得到了同样的结果。

@winheight:`$(window).height()`px
height: @winheight;
...

height:910 px;

如何获得height:910px(没有数字和单位之间的空格)?


编辑:

对于前四个结果,它会创建一个字符串height:"910px",但无法正确呈现。

7 个答案:

答案 0 :(得分:7)

只需使用~,然后使用@winheight:`$(window).height()`; height: ~"@{winheight}px"; 使用字符串中的string interpolation

{{1}}

答案 1 :(得分:1)

给出这段代码,看看你得到了什么。

@winheight:0px + `$(window).height()'

答案 2 :(得分:1)

.css(height)代替.height() - 这会返回值+ unit。

答案 3 :(得分:0)

更换空的空间对你有帮助吗?请尝试阅读以下答案:Replacing spaces with underscores in JavaScript?

答案 4 :(得分:0)

试试这个

@winheight:`$(window).height()+"px"`
height: @winheight;

因为 .height()仅返回无单位像素值。
或者使用以下

@winheight:`$(window).css("height")`
    height: @winheight;

.css(“height”)返回一个单位为

的值

答案 5 :(得分:0)

这个怎么样:

@winheight:`$(window).height().toString() + "px"`

答案 6 :(得分:0)

这可能会起作用,这取决于我不太了解的LESS。

阅读文档是可能的。

@winheight:0px + `$(window).height()`