2012-09-06 57 views
2

我想做一個腳本,計算div'id'的高度,並返回與margin-top相同的值。但是這並不是。怎麼了?計算div高度和回報作爲保證金?

<script language="text/javascript"> 
var height = document.getElementById('id').innerHeight; 
document.getElementById('id').style.marginTop = height + 'px'; 
</script> 

在此先感謝!

回答

2

嘗試;

<script type="text/javascript"> 
window.onload = function() { 
var height = document.getElementById('mydiv').offsetHeight; 
document.getElementById("mydiv").style.marginTop = height+'px'; 
} 
</script> 

Here是現場演示。

2

請記住,您應該只在onload事件觸發後操作DOM,或者在觸發DOMContentLoaded事件時才應使用現代瀏覽器。總之,onload將適用於您的情況。

嘗試:

<script language="text/javascript"> 
window.onload = function() { 
    var height = document.getElementById('id').innerHeight; 
    document.getElementById('id').style.marginTop = height + 'px'; 
} 
</script> 
0

您的js中的第一個錯誤是language="text/javascript"它必須是type="text/javascript"。並嘗試在地方使用offsetHeightinnerHeight

<script type="text/javascript" > 

     var height = document.getElementById('id').offsetHeight; 
     document.getElementById('id').style.marginTop = height + 'px'; 
     } 
    </script> 

,並調用它onload事件。

謝謝,