我正在尝试使用javascript获取div的宽度。最初div的宽度是未定义的,即宽度取决于其上的文本量。是否有可能获得这种div的宽度?我正在尝试使用以下javascript代码,但是当我正在检查div时,我从Chrome控制台获得了不同的宽度
var mydiv = document.getElementById("error_message");
var curr_width = mydiv.clientWidth;
alert(curr_width);
感谢您的关注
答案 0 :(得分:6)
使用offsetWidth
clientWidth计算宽度,offsetWidth是“Chrome检查元素”中的一个(我认为)
还阅读了评论:P
答案 1 :(得分:1)
虽然OP没有指定一种方式,但如果您碰巧有jQuery可用,您可以随时使用:
var curr_width = $('#error_message').width();
答案 2 :(得分:0)
我设法解决了这个问题!我试图直接在javascript中创建div,而不是在html主体上定义div。所以在我创建的标签内部
<div id="error_message" style="visibility:hidden;"></div>
它已经奏效了! 最终的JavaScript代码是:
document.write("<div id=\"error_message\">Wrong username or password!</div>");
var mydiv = document.getElementById("error_message");
var curr_width = mydiv.offsetWidth;
alert(curr_width);