首页 > 解决方案 > 获得真正的 p 宽度

问题描述

我正在获取<p>的宽度。被<p>放置在一个<div>容器内,<input>旁边有一个。在<div>获得宽度之前,它及其所有内容都被动态添加到 DOM 中。

<div id="text-0">
<p>name</p>
<input>
</div>

<p>如果我在控制台中查看$(p)对象属性的宽度是 35 ( offsetWidth, clientWidth),但$(p).width()在代码中返回 162,这是它旁边的输入元素的宽度。所有方法返回相同的值$(p).innerWidth(), $(p).outerWidth(), p.offsetWidth, p.clientWidth,p.getBoundingClientRect()

标签: javascriptjqueryhtmlcss

解决方案


我发现了它是什么——我的错误不是我想的 javascript/css 问题。它与使用 AngularJs$compile有关div,我没有提到它,因为我认为它与问题无关。解决方案是等待 $compile 然后获取测量值。


推荐阅读