【问题标题】:Is it needed to add "px" when setting sizes via javascript?通过javascript设置大小时是否需要添加“px”?
【发布时间】:2018-10-02 02:23:42
【问题描述】:

我正在维护一个项目,我看到很多部件都以这种方式设置尺寸值:

var position = 500; // This value was calculated in some different way.
$someElement.css({
    left: position.toString() + "px"
});

如果我将其更改为

$someElement.css({
    left: position
});

它工作得很好,但我找不到任何关于旧浏览器的文档,或者在某些极端情况下这不起作用。

对我来说,添加“px”似乎会给代码增加很多噪音,但我不确定是否可以安全删除。

我想知道是否存在这种更改不起作用的情况。

【问题讨论】:

  • 在大多数 CSS 属性中,您需要一个单位(px、em、vh、in、mm、cm % 等)——我认为浏览器不会假设 px,但我可以错了 - 当我说大多数时,我的意思是... 所有我能想到的长度/位置属性需要一个测量单位
  • 顺便说一句,对toString 的调用完全是多余的,只需position + "px" 即可。 或者你是不是故意让它看起来很糟糕?

标签: javascript jquery resize


【解决方案1】:

这取决于您使用的 jQuery 版本。旧版本需要一个单位,但现在他们返回数字本身。通常在较新的库中,当您使用代码时,您不需要包含 px,如果它正在工作并且没有返回类似“(初始值)px+500”的东西,那么您可能使用的是较新的版本。只需确保代码没有使用 vh、vw、rem、% 或其他类型的单位!

Check this other question out that might help you

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多