javascript - 未设置时获取元素宽高

标签 javascript jquery html css

我有一个 HTML 元素,但我没有在 CSS 中定义宽度或高度(或者有时我可能没有定义右侧或底部,但我确实定义了宽度和高度)。

你知道我如何使用 JavaScript 获取元素的宽度或高度或右侧或底部(如果我尚未设置)吗?

#blockMenu { z-index: 0; padding: 10%; }

如果我执行以下操作,我知道它不会工作,因为我没有设置宽度或右边:

var width = document.getElementById("blockMenu").offsetRight - document.getElementById("blockMenu").offsetLeft;

当我还没有设置元素时,是否可以确定元素的尺寸和位置?

如果不是,如果我定义宽度怎么办?如何通过JavaScript获取元素的宽度?

最佳答案

使用 JavaScript 你可以做到

document.getElementById("blockMenu").clientWidth;
document.getElementById("blockMenu").clientHeight;

使用 jQuery 你可以做到

$('#blockMenu').width();
$('#blockMenu').height();

http://jsfiddle.net/7jteV/2/ 查看工作示例

关于javascript - 未设置时获取元素宽高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5385624/

相关文章:

javascript - 倒数计时器不适用于 AJAX

javascript - 如何在 JavaScript 中通过索引打印所有字符?

PHP json_encode 在不同的 php 版本中表现不同

javascript - 如何检查窗口是否已滚动到 href,然后执行 javascript/jQuery 中的函数?

python - 静态文件不会在 Django (Pycharm) 中加载

javascript - 使用 Openlayers 3 中的 WFS 层获取弹出窗口的重叠特征信息

javascript - 我这样使用 asp mvc Controller 和 javascript 的方法是否正确?

jquery - 页面重定向后显示特定的 div

javascript - 通过 onclick 更改背景并阻止悬停

html - 文本插入光标(插入符号)出现在移动浏览器中的其他元素上方