IE是在脚本完全加载之前就会运行JS,所以类似
前面一个总会alert 0 ,另外如果div的样式设置为display:none据说也会为0.
关于Ext中众多的异步加载也可能会出现问题。
DragDropMgr.getLocation()中就使用了此属性,在工程中出现了就算加载完,点击按钮触发方法去alert(offsetWidth)也会显示0,现在都只能通过重写的方法重新设置,对IE进行特殊处理,当然是在确定IE拿出来的为0的情况下(经常是不定时的,特定标签为0,除了上面两种原因外,其他具体原因也搞不清楚)。
注意区分clientWidth,offsetWidth等在IE与FF,Chorme中的不同,在做padding时候IE也是往内部延伸,此类文章很多。
<html>
<head>
<title>offsetWidth使用实例</title>
<body>
<div id="aa">
<table border="1">
<tr>
<td id="bb">
Some text goes here...
<script type="text/javascript">
alert(document.getElementById("bb").offsetWidth);
</script>
</td>
</tr>
</div>
</table>
<script type="text/javascript">
alert(document.getElementById("bb").offsetWidth);
</script>
</body>
</html>
前面一个总会alert 0 ,另外如果div的样式设置为display:none据说也会为0.
关于Ext中众多的异步加载也可能会出现问题。
DragDropMgr.getLocation()中就使用了此属性,在工程中出现了就算加载完,点击按钮触发方法去alert(offsetWidth)也会显示0,现在都只能通过重写的方法重新设置,对IE进行特殊处理,当然是在确定IE拿出来的为0的情况下(经常是不定时的,特定标签为0,除了上面两种原因外,其他具体原因也搞不清楚)。
注意区分clientWidth,offsetWidth等在IE与FF,Chorme中的不同,在做padding时候IE也是往内部延伸,此类文章很多。