0

在我的 HTML 页面中,我得到:

<script language="JavaScript">
  function mostrar(blo) {
   var str = "";
   ...
   window.document.tbl27svg.pinta(str);
}

在同一个html页面的某个地方,我有:

<object id="tbl27svg" data="../../imagenes/svg/tbl27.svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1100px" height="1000px" type="image/svg+xml"/>

在文件 tbl27.svg 我需要调用一个函数:

parent.pinta=pinta

function inicia(event){
    SVGDocument = event.target.ownerDocument;                                  
}       


    function pinta(strSVG){
    var nuevoNodo=parseXML(strSVG, document);
    if(document.getElementById('grafico1').childNodes.length>0){
        if(!document.getElementById('grafico2').childNodes.length>0)
            SVGDocument.getElementById("grafico2").appendChild(nuevoNodo);
    }else{
        SVGDocument.getElementById("grafico1").appendChild(nuevoNodo);
    }
}

所以,我尝试了几种方法来调用 tbl27.svg 文件上的 pinta() 函数。但我总是收到一个 java 脚本错误:“对象不支持此属性或方法”

4

1 回答 1

0

确保在pinta()函数声明之前放置window.document.tbl27svg.pinta(str);

<script>
  function pinta(){
    ...
  }

  function mostrar(blo) {
    var str = "";
    ...
    window.document.tbl27svg.pinta(str);
  }
</script>
于 2013-02-01T16:17:19.670 回答