根据innerWidth属性更改元素宽度

时间:2018-12-05 23:47:57

标签: javascript

我正在尝试更改元素的宽度。

<p class="bg-primary" style="width: 100px;" id="test"></p>

脚本成功获取屏幕宽度...

let x = window.innerWidth || e.clientWidth || g.clientWidth;

...把​​它减半...

let halfx = parseInt(x * 0.5);

...并将其解析为字符串。

let elemWidth = '"' + String(halfx) + 'px"';

但是,代码然后无法更新样式。

document.getElementById("test").style.width = elemWidth;

有任何线索吗?

1 个答案:

答案 0 :(得分:2)

显然,您的代码执行了双字符串操作,导致失败。如果您有console.log(elemWidth)会告诉您""158px""或类似的内容。

let x = window.innerWidth || e.clientWidth || g.clientWidth;

let halfx = parseInt(x * 0.5);

let elemWidth = halfx + 'px';

document.getElementById("test").style.width = elemWidth;
<p class="bg-primary" style="border: 1px solid black;" id="test">TEST</p>
The script successfully takes the screen width...