2012-05-13 52 views
1

我在javascript中创建多个行星对象来处理动画。在IE浏览器中使用Javascript对象所需的错误

动画工作正常,每个行星,但我得到的错误在IE 6/7说:“第15行字符2所需的对象”

代码:

var earthObj = null; 
var mercObj = null; 
var jupiObj = null; 
var animate; 
function init() 
{ 
    mercObj = document.getElementById('mercury'); 
    earthObj = document.getElementById('earth'); 
    jupiObj = document.getElementById('jupiter'); 

    mercObj.style.position= 'relative'; 
    mercObj.style.left = '54px'; 
    mercObj.style.visibility = 'hidden'; 

    earthObj.style.position= 'relative'; //error on this line 
    earthObj.style.left = '80px'; 
    earthObj.style.top = 300px'; 
} 
+3

也许你丢失的地球? – VisioN

+0

向我们显示标记,以及'

1

收割机尝试,如果它存在调用对象,测试之前。

earthObj = document.getElementById('earth'); 
if(!earthObj) { 
    alert("Could not find Earth"); 
    return; 
} 
0

我发现,在IE浏览器,如果脚本定义/生成的HTML元素后的功能工作。

即把脚本的HTML文档的结尾,而不是开头,或使用jQuery的ready功能:

$(function() { 
    mercObj = document.getElementById('mercury'); 
}); 
相关问题