应该是你不管加个 alert() 什么 都会出现这样的效果的吧 
    svgDocus = [
        document.getElementById('svg1').getSVGDocument(),
        document.getElementById('svg2').getSVGDocument()
    ];alert(1); //结果弹出 1    alert(svgDocus[0]); //结果弹出 [object SVGDocument]
    alert(svgDocus[1]); //结果弹出 [object SVGDocument]
这样应该也能达到你那样的效果的

解决方案 »

  1.   

    alert(1)放在 "svgDocus = [ ” 的前面才会提示[object SVGDocument]
    放后面就是[disposed object];
    像2楼这样放的话,后面两个alert就都是[disposed object]了
      

  2.   

    怎么会这样呢,问了一下别人,说是alert后对象可能被垃圾回收了,但是我不alert的话,后面使用对象的时候获取到的rootElement的值是null,在svgDocus前面加上alert(1)却都正常了
      

  3.   

    你吧 alert  换成 setTimeout(1000) 试试看 
      

  4.   

    可能是load的问题吧alert,了一下就给予了时间完成loaded
      

  5.   

    这段代码我是写在Ext.onReady(function(){})的函数中的
    alert放在svgDocus= 的后面就有问题了
      

  6.   

    难道是svg从后台加载svg文件没有完成?
    我的这段代码写在onReady方法中的,页面内容肯定是读取完了的,应该是加载其他内容的!
    谢谢了!
    结贴
      

  7.   

    存在未加载完的可能。
    你可以试试放到body的onload里测试应该谈出一样了吧.
    5楼的settimeout也可以,时间应该不需要1秒那么长.