无法在AngularJS模态窗口中获得DIV的宽度

时间:2012-10-24 23:41:19

标签: javascript dom

我将此代码放入我的AngularJS Web应用程序中的index.html文件或view(html)文件中,它就像一个魅力:

<div id="chart"></div>

<script>
    var chart = document.getElementById("chart");
    alert("width is : " + chart.offsetWidth);
</script>

我可以调整浏览器窗口的大小,当我刷新时,它会告诉我新的宽度。

但是,当我将此代码放入视图(html)文件中的模态窗口的代码时,我得到“width is:0”

有人知道为什么以及如何在模态窗口中获得DIV的宽度?

2 个答案:

答案 0 :(得分:0)

这个问题已经过时了,但是如果你或其他人还没有想出来的话:

您需要确保在渲染元素之后获得您正在寻找的值。否则你将永远得到'0'

这就是为什么在jQuery中你将代码包装在这样的块中:

$(function() {
    // your code here
}); 

这有一些变种; 在纯JS中,您将使用'document.onLoad'

答案 1 :(得分:-3)

如果你正在使用jQuery,你可以使用

$('#chart').width()

http://api.jquery.com/width/