Вопрос по javascript, css – используя вычисленные значения JavaScript меньше

8

В 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

Как насчет этого:

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

дай этот код и посмотри что у тебя получится.

@winheight:0px + `$(window).height()'
повторять ответ ...
мой плохой ... не стесняйтесь редактировать свой ответ, чтобы я мог удалить -1.
@Christoph: Руши поднял этот ответ, пока я редактировал свой, так что копирование не требовалось
0

попробуй это

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

так как.height() только возвращаетсяunit-less pixel value.
alternatively используйте следующее

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

.css (& quot; высота & quot;) возвращает значение в единицах

это возвращает строковое значение. но это не отображается в браузереheight: "910px" tiran
@tiran проверьте мой обновленный ответ один раз, пожалуйста, дайте мне знать, если работает или нет
Я получил следующую ошибку, когда я выполняю ваш код в браузере.TypeError: Cannot read property 'defaultView' of undefined tiran
0
1

принимать.css(height) вместо.height() - это возвращает значение + единицу.

7

Просто использоватьинтерполяция строк а потомпобег из строки, используя~:

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

height: ~"@{winheight}px";
Это означает, что МЕНЬШЕ не получает jQuery?
Я получил эту ошибку в NodeJs - ошибка оценки JavaScript: & gt; ReferenceError: $ не определен & apos;
@Mochamad Lucky Prada, вы можете оценить только JavaScript в LESS, который скомпилирован на стороне клиента
0

Это может работать в зависимости от МЕНЬШЕ, которое я не знаю хорошо.

Читая документы, это возможно.

@winheight:0px + `$(window).height()`
Я отредактировал свой ответ после прочтения документов. Вы можете установить jsFiddle?
это возвращает строковое значение. но он не отображается в высоте браузера: & quot; 910px & quot; tiran

Похожие вопросы