1

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

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

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

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

但是,当我将此代码与视图(html)文件中的模式窗口代码一起放入时,我得到“宽度为:0”

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

4

2 回答 2

0

这个问题很老,但如果你或其他人还没有弄清楚:

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

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

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

有几种变体;在纯 JS 中,您将使用“document.onLoad”

于 2013-01-11T17:01:42.470 回答
-3

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

$('#chart').width()

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

于 2012-10-25T01:23:05.140 回答