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



我将此代码放入我的angularjs Web应用中的index.html文件或视图(HTML)文件中,它的工作方式就像魅力:

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

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

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

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

问题是旧的,但如果您或其他人还没有弄清楚它:

您需要确保在呈现元素后获得所需的价值。否则,您将始终获得'0'

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

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

有几种变体;在纯JS中,您将使用'document.onload'

如果您正在使用jQuery,则可以使用

$('#chart').width()

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

最新更新