我一直在SVG中玩动画: http://imgh.us/renamon-animtest.svg(链接到脚本“anim.js”)
在window.onload事件中,我有:
function init(evt)
{
if(window.svgDocument == null)
{
if(evt.target && evt.target.ownerDocument)
svgDocument = evt.target.ownerDocument;
else if(evt.originalTarget && evt.originalTarget.ownerDocument)
svgDocument = evt.originalTarget.ownerDocument;
else svgDocument = document;
}
_debug = svgDocument.getElementById('debug');
alert(_debug.firstChild.nodeValue);
for(i = 0; i < 1; i++)
balls[i] = svgDocument.getElementById('ball' + i);
setInterval(loop, 50);
}
它可以很好地找到'ball'对象,但不能找到'debug'对象(getElementById返回null)。我可以在源代码中看到它,为什么脚本找不到呢?
答案 0 :(得分:1)
很可能你正在测试SVG 1.1的实现,因为在SVG 1.2中引入了flowRoot 忽略无效元素,因此不会显示在DOM
中