2012-03-27 20 views
0

我有一些像這樣的代碼:獲取和設置樣式不起作用?

var content = document.getElementById('myDivId'); 

function MyFunction() 
{ 
    alert(content.style.height); 
} 

出於某種原因,我沒有得到任何消息框。我的「body onload」等於「MyFunction()」。

+0

將所有代碼。 – JBrooks 2012-03-27 00:30:27

回答

2

你不能在你的腳本

var content = document.getElementById('myDivId'); 

只是自由浮動,因爲那時實際上已經創造了myDivId元素之前,它將運行,所以content不會最終提到它。嘗試將其放入您的加載處理程序中:

function MyFunction() 
{ 
     var content = document.getElementById('myDivId'); 
     alert(content.style.height); 
} 

改爲;或者,如果您希望它是全局可見的,您至少可以在您的onload處理程序中初始化它:

var content; // declare globally 

function MyFunction() 
{ 
     content = document.getElementById('myDivId'); // initialize 
     alert(content.style.height); 
}